Opened 7 years ago

Closed 7 years ago

#1090 closed task (invalid)

Glibc 2.22 Upstream i386 patch

Reported by: William Harrington Owned by: clfs-commits@…
Priority: critical Milestone: CLFS Standard 3.1.0
Component: BOOK Version: CLFS Standard GIT
Keywords: Cc: berzerkula@…, jonathan@…, chris@…, cross-lfs@…


Chris has witnessed multiple times with the lmvec issue which was mentioned in the Glibc 2.22 Ticket. I'm putting what was in that ticket in this new ticket as it is a problem which needs to be fixed.

There is Glibc 2.22 now. It includes a new library called "libmvec" but apparently that lib cannot be directly linked to. The script errors out:

tools/lib/gcc/x86_64-unknown-linux-gnu/5.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: cannot find -lmvec

Chris and I have discussed the situation and think it is best to include the patch LFS uses. Do we need this only for final-system or for glibc installed into /tools? Built Glibc with --disable-libmvec, which does prevent the lib from being installed, but still tries linking to it anyway. A temporary solution would be just to prevent from trying to link to it:

sed -i 's/libgcc_s"/& \&\& $name ne "mvec"/' scripts/

Change History (4)

comment:1 Changed 7 years ago by William Harrington

I use 32bit hosts and haven't encountered this issue. Is GLIBC using output from uname? Where is the problem?

comment:2 Changed 7 years ago by chris@…

The actual problem doesn't have anything to do with 32/64 bits, at least not directly. The issue is that the script tries to compile a test program that links to libmvec, but does so unconditionally, even if the library was not actually built and installed. This issue might appear to be related to 32-bit systems, as libmvec is apparently not installed by default if you're using 32 bits, but the real problem is that libmvec is tested whether or not it's installed, and it causes an error if that library was not installed. Note that you can get the same result on a 64-bit build by adding "--disable-mathvec" to Glibc's configure.

Therefore, the patch simply modifies the test-installation script so that it tests for the existence of libmvec, and only tries linking to it if it exists.

comment:3 Changed 7 years ago by chris@…

This patch has been applied in Glibc 2.23, in #1109.

comment:4 Changed 7 years ago by chris@…

Resolution: invalid
Status: newclosed

Superceded by Glibc 2.23.

Note: See TracTickets for help on using tickets.