Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple definition errors in test-tool #340

Closed
bryceharrington opened this issue Aug 18, 2020 · 4 comments
Closed

Multiple definition errors in test-tool #340

bryceharrington opened this issue Aug 18, 2020 · 4 comments

Comments

@bryceharrington
Copy link

Following a cherry-pick of #308 "attribute_packed.patch" to resolve a multiple-definition error with gcc10, Debian and Ubuntu CI's are also seeing "multiple defintion" errors in the test-tool code:

https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/libiscsi.html
https://buildd.debian.org/status/package.php?p=libiscsi
https://launchpad.net/ubuntu/+source/libiscsi/1.19.0-2/+build/19774393

This is with:
Kernel version: 4.15.0-112-generic
gcc version: 10.2.0

/usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:782: multiple definition of local_iscsi_queue_pdu'; iscsi-test-cu.o:./test-tool/iscsi-support.h:782: first defined here /usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:63: multiple definition of copy_aborted_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:63: first defined here
/usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:62: multiple definition of miscompare_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:62: first defined here /usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:61: multiple definition of removal_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:61: first defined here
/usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:60: multiple definition of sanitize_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:60: first defined here /usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:59: multiple definition of write_protect_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:59: first defined here
/usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:58: multiple definition of unsupp_desc_code_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:58: first defined here /usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:57: multiple definition of too_many_desc_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:57: first defined here
/usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:56: multiple definition of param_list_len_err_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:56: first defined here /usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:55: multiple definition of invalid_cdb_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:55: first defined here
/usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:54: multiple definition of lba_oob_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:54: first defined here /usr/bin/ld: test_prefetch10_simple.o:./test-tool/iscsi-support.h:53: multiple definition of no_medium_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:53: first defined here
/usr/bin/ld: test_prefetch10_beyond_eol.o:./test-tool/iscsi-support.h:54: multiple definition of `lba_oob_ascqs'; iscsi-test-cu.o:./test-tool/iscsi-support.h:54: first defined here

@bvanassche
Copy link
Collaborator

The local_iscsi_queue_pdu variable has been removed from the upstream libiscsi project. Please sync the Ubuntu version of libiscsi with the upstream version. See also commit dd17293.

@cpaelzer
Copy link

cpaelzer commented Sep 8, 2020

These commits all combined fix the issue around local_iscsi_queue_pdu:
dd17293 2ae45ac 77279dd c830a3b b705f9e fdc45fa 153ca19 575ba22 c067eef 310e9ac 60a5856

But the circular header definitions for miscompare_ascqs and others stay.
I'll dive through upstream master, but if you have a pointer that could be helpful please let me know.

@cpaelzer
Copy link

cpaelzer commented Sep 8, 2020

Most likely ea89dcd which I'll try ...

@cpaelzer
Copy link

cpaelzer commented Sep 8, 2020

Yes with this on top as well it works to build the version currently in Ubuntu.

And in the next cycle (feature freeze atm) we can sync the new version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants