On Mon, 4 Jul 2022 at 13:54, Vincent Lefevre wrote: > > On 2022-07-04 13:13:58 +0100, Jonathan Wakely via Gcc-help wrote: > > On Mon, 4 Jul 2022 at 12:58, Vincent Lefevre <vincent+gcc@xxxxxxxxxx> wrote: > > > > > > On a Debian/unstable machine, I'm trying to build old GCC, such as > > > one based on 0cc79337ad265aabccab63882a810f9dc509a9d0 (2021-04-20). > > > I'm using > > > > > > ../gcc-trunk/configure --prefix=$HOME/opt/gcc-trunk \ > > > --enable-multiarch \ > > > --enable-languages=c \ > > > --program-suffix=-test > > > > > > but "make" gives the following error: > > > > > > /usr/bin/msgfmt: /home/vlefevre/software/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /usr/lib/x86_64-linux-gnu/libicuuc.so.71) > > With a54ce8865a885bca5ab9c4aa6ec725cd13c09901, this is: > > /usr/bin/msgfmt: symbol lookup error: /usr/lib/x86_64-linux-gnu/libicuuc.so.71: undefined symbol: _ZNSt18condition_variable4waitERSt11unique_lockISt5mutexE, version GLIBCXX_3.4.30 > > > Something is setting LD_LIBRARY_PATH so that the newly-built > > libstdc++.so is being used. > > Indeed, using a wrapper with "printenv LD_LIBRARY_PATH" for msgfmt, > I get: > > LD_LIBRARY_PATH: /home/vlefevre/software/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs:/home/vlefevre/software/gcc-build/x86_64-pc-linux-gnu/libsanitizer/.libs:/home/vlefevre/software/gcc-build/x86_64-pc-linux-gnu/libvtv/.libs:/home/vlefevre/software/gcc-build/x86_64-pc-linux-gnu/libssp/.libs:/home/vlefevre/software/gcc-build/x86_64-pc-linux-gnu/libgomp/.libs:/home/vlefevre/software/gcc-build/x86_64-pc-linux-gnu/libitm/.libs:/home/vlefevre/software/gcc-build/x86_64-pc-linux-gnu/libatomic/.libs:/home/vlefevre/software/gcc-build/./gcc:/home/vlefevre/software/gcc-build/./prev-gcc I think this patch from Alpine should fix it: https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/main/gcc/0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch