Summary: | dev-util/cmake-3.14.6 : ld: /usr/lib/libexpat.so: error adding symbols: file in wrong format | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Mario Kicherer <dev> |
Component: | Current packages | Assignee: | Gentoo KDE team <kde> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | CC: | alex |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | build.log |
Description
Mario Kicherer
2020-01-07 14:57:53 UTC
Created attachment 602752 [details]
build.log
$ file /usr/lib/libexpat.so.1.6.10 /usr/lib/libexpat.so.1.6.10: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped $ equery f expat * Searching for expat ... * Contents of dev-libs/expat-2.2.8: /usr /usr/bin /usr/bin/xmlwf /usr/include /usr/include/expat.h /usr/include/expat_config.h /usr/include/expat_external.h /usr/lib /usr/lib/debug /usr/lib/debug/usr /usr/lib/debug/usr/bin /usr/lib/debug/usr/bin/xmlwf.debug /usr/lib/debug/usr/lib /usr/lib/debug/usr/lib/libexpat.so.1.6.10.debug /usr/lib/debug/usr/lib/libexpatw.so.1.6.10.debug /usr/lib/debug/usr/lib64 /usr/lib/debug/usr/lib64/libexpat.so.1.6.10.debug /usr/lib/debug/usr/lib64/libexpatw.so.1.6.10.debug /usr/lib/libexpat.so -> libexpat.so.1.6.10 /usr/lib/libexpat.so.1 -> libexpat.so.1.6.10 /usr/lib/libexpat.so.1.6.10 /usr/lib/libexpatw.so -> libexpatw.so.1.6.10 /usr/lib/libexpatw.so.1 -> libexpatw.so.1.6.10 /usr/lib/libexpatw.so.1.6.10 /usr/lib/pkgconfig /usr/lib/pkgconfig/expat.pc /usr/lib/pkgconfig/expatw.pc /usr/lib64 /usr/lib64/libexpat.so -> libexpat.so.1.6.10 /usr/lib64/libexpat.so.1 -> libexpat.so.1.6.10 /usr/lib64/libexpat.so.1.6.10 /usr/lib64/libexpatw.so -> libexpatw.so.1.6.10 /usr/lib64/libexpatw.so.1 -> libexpatw.so.1.6.10 /usr/lib64/libexpatw.so.1.6.10 /usr/lib64/pkgconfig /usr/lib64/pkgconfig/expat.pc /usr/lib64/pkgconfig/expatw.pc /usr/share /usr/share/doc /usr/share/doc/expat-2.2.8 /usr/share/doc/expat-2.2.8/AUTHORS.bz2 /usr/share/doc/expat-2.2.8/README.md.bz2 /usr/share/doc/expat-2.2.8/changelog.bz2 /usr/share/doc/expat-2.2.8/html /usr/share/doc/expat-2.2.8/html/expat.png /usr/share/doc/expat-2.2.8/html/reference.html /usr/share/doc/expat-2.2.8/html/style.css /usr/share/doc/expat-2.2.8/html/valid-xhtml10.png /usr/share/man /usr/share/man/man1 /usr/share/man/man1/xmlwf.1.bz2 I also re-emerged several packages again like gcc, pkgconfig and tried different cmake versions but it makes no difference. If I execute the cmake command myself from within /var/tmp/portage with an additional -DCMAKE_LIBRARY_PATH=/usr/lib64 it finds the right libraries. I'm not sure but it looks to me like cmake is using the paths the GCC outputs with "-v" to look for libraries, e.g. here: LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/../../../../lib64/:/lib/../lib64/:/usr/lib/../lib64/:/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/../../../:/lib/:/usr/lib/ and it finds the wrong libraries in the last two paths. Maybe it does not like the "../lib64" indirection. This is a multilib cmake bug. https://bugs.gentoo.org/644538#c15 It may include files from x64 folders when build x32 part and vice versa. emerge -1 dev-libs/expat @Alexander: thanks for the info! @Andreas: I reemerged expat but the cmake problem persists. Do you need any logs? Today, I also got this message:
>>> Installing (2 of 10) media-libs/harfbuzz-2.6.4::gentoo
* checking 186 files for package collisions
* Package 'media-libs/harfbuzz-2.6.4' has internal collisions between
* non-identical files (located in separate directories in the
* installation image (${D}) corresponding to merged directories in the
* target filesystem (${ROOT})):
*
* /usr/lib64/cmake/harfbuzz/harfbuzz-config.cmake
* /usr/lib/cmake/harfbuzz/harfbuzz-config.cmake
* /usr/lib64/cmake/harfbuzz/harfbuzz-config.cmake
* Differences: size, content
*
* Package 'media-libs/harfbuzz-2.6.4' NOT merged due to internal
* collisions between non-identical files. If necessary, refer to your
* elog messages for the whole content of the above message
I also tried a --emptytree @system but it also fails during the build of a package which uses cmake. Unfortunately I can only assume this is caused by a broken profile 17.0 to 17.1 migration. |