Broken out from bug 8402. There is a bug in libtool [1] where doing a DESTDIR make install will relink against the wrong libraries. In our case from bug 8402, we saw that libraries in util-linux linked against the system's glibc instead of the one in cenbuild. It doesn't look like this bug has been fixed and has been in libtool for decades. [1] http://savannah.gnu.org/support/?107416
According to the original bug report [1], this issue can be avoided by passing > --enable-fast-install to configure. I've tried doing this when building util-linux, with no avail. The flag is even on by default, so I tried disabling it and still got the same result. [1] http://savannah.gnu.org/support/?107416
To reproduce this error (with util-linux-2.32.1): 1. Add an 'exit 1' after %{_cendio_makeinstall} in util-linux.spec 2. ./repo/rebuild cendio-build-util-linux-x86_64 3. When the build exists, navigate to repo/rpmbuild/BUILD/util-linux-2.32.1/ 4. > $ objdump -t ./.libs/libmount.so.1.1.0 | grep clock > 0000000000000000 F *UND* 0000000000000000 clock_gettime@@GLIBC_2.2.5 5. > $ objdump -t ./.libs/libmount.so.1.1.0T | grep clock > 0000000000000000 F *UND* 0000000000000000 clock_gettime@@GLIBC_2.17 The .so files that end with a T are generated during the install step and are the ones that get installed. Unfortunately, they are linked to the system's glibc, instead of the one in cenbuild.
To check if --enable-fast-install was respected, I looked in the BUILD/util-linux-2.32.1/ directory in "config.status": > enable_fast_install='yes' and in "libtool": > fast_install=yes Setting --enable-fast-install=no, "config.status": > enable_fast_install='no' and "libtool": > fast_install=no
The issue that is seen when this happens is that when you're trying to use the wrongly linked library, you will get an error along the lines of: > undefined reference to `memcpy@GLIBC_2.14'