I've been trying to install GCC 9.5 on Debian Bookworm (12) using gcc-12 which is available in the Debian repos. The build fails at make
citing it couldn't find GLIBCXX_3.4.30
. The relevant part of the make
log is as follows:
Making all in po
make[5]: Entering directory '/home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3/po'
msgfmt -o de.mo ../../../../gcc-releases-gcc-9.5.0/libstdc++-v3/po/de.po
msgfmt -o fr.mo ../../../../gcc-releases-gcc-9.5.0/libstdc++-v3/po/fr.po
msgfmt: /home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6: version `GLIBCXX_3.4.30' not found
(required by /lib/x86_64-linux-gnu/libicuuc.so.72)
make[5]: *** [Makefile:550: de.mo] Error 1
make[5]: *** Waiting for unfinished jobs....
msgfmt: /home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6: version `GLIBCXX_3.4.30' not found
(required by /lib/x86_64-linux-gnu/libicuuc.so.72)
make[5]: *** [Makefile:550: fr.mo] Error 1
make[5]: Leaving directory '/home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3/po'
make[4]: *** [Makefile:562: all-recursive] Error 1
make[4]: Leaving directory '/home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3'
make[3]: *** [Makefile:487: all] Error 2
make[3]: Leaving directory '/home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3'
make[2]: *** [Makefile:19557: all-stage1-target-libstdc++-v3] Error 2
make[2]: Leaving directory '/home/apps/builds/gcc/gcc-9/build'
make[1]: *** [Makefile:27270: stage1-bubble] Error 2
make[1]: Leaving directory '/home/apps/builds/gcc/gcc-9/build'
make: *** [Makefile:1002: all] Error 2
I used the following configure options:
configure --prefix=path-to-install-dir --disable-multilib --enable-languages=c,c++,fortran --enable-checking --program-suffix=9.5
I don't really understand the error I'm getting. The funny thing is, I can compile GCC 12 from source successfully in the same machine.
The GCC source code is in /home/apps/builds/gcc/gcc-9/gcc-releases-gcc-9.5
while I'm building it in /home/apps/builds/gcc/gcc-9/build
.
The most recent version of GLIBCXX
in /home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
is GLIBCXX_3.4.28
/home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
doesn't have the neededGLIBCXX_3.4.30
capabilities. Add the output ofstrings -d /home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6 | grep -i glibcxx
to the question. To be sure, is/home/apps/build/gcc
the location of the source code? – Nasir Riley Sep 11 '23 at 01:00/home/apps/builds/gcc/gcc-9/gcc-releases-gcc-9.5.0
and I'm building it in '/home/apps/builds/gcc/gcc-9/build'. – RogUE Sep 11 '23 at 06:00/home/apps/builds/gcc/gcc-9/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6' is in the build directory and it doesn't have
GLIBCXX_3.4.30(it has glibcxx upto
GLIBCXX_3.4.28`). – RogUE Sep 11 '23 at 06:03