Issues compiling gcc 12.3.0

Jonathan Wakely jwakely.gcc@gmail.com
Thu Jan 25 10:24:25 GMT 2024


On Thu, 25 Jan 2024 at 10:21, Damas Joao CHST via Gcc-help
<gcc-help@gcc.gnu.org> wrote:
>
> Hi,
>
> I am following a recipe I already had working for gcc 12.1.0 and trying to install 12.3.0 from source, and I am facing the following:

Your recipe is wrong.


> libtool: compile:  /tmp/tmp-gcc-12.3.0/source/build/./gcc/xgcc -shared-libgcc -B/tmp/tmp-gcc-12.3.0/source/build/./gcc -nostdinc++ -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/bin/ -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/lib/ -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/include -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/sys-include -fno-checking -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/../libgcc -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/libsupc++ -std=gnu++98 -D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=locale_facets.lo -g -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -D_GNU_SOURCE -c ../../../../../libstdc++-v3/src/c++98/locale_facets.cc  -fPIC -DPIC -D_GLIBCXX_SHARED -o locale_facets.o
> libtool: compile:  /tmp/tmp-gcc-12.3.0/source/build/./gcc/xgcc -shared-libgcc -B/tmp/tmp-gcc-12.3.0/source/build/./gcc -nostdinc++ -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/bin/ -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/lib/ -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/include -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/sys-include -fno-checking -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/../libgcc -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/libsupc++ -std=gnu++98 -D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=locale_init.lo -g -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -D_GNU_SOURCE -std=gnu++11 -fchar8_t -c ../../../../../libstdc++-v3/src/c++98/locale_init.cc  -fPIC -DPIC -D_GLIBCXX_SHARED -o locale_init.o
> ../../../../../libstdc++-v3/src/c++98/bitmap_allocator.cc:51:23: error: ISO C++17 does not allow dynamic exception specifications
>    51 |   _M_get(size_t __sz) throw(std::bad_alloc)
>       |                       ^~~~~

This file needs to be compiled with -std=gnu++98, so why are you using
-std=c++17 here?


> libtool: compile:  /tmp/tmp-gcc-12.3.0/source/build/./gcc/xgcc -shared-libgcc -B/tmp/tmp-gcc-12.3.0/source/build/./gcc -nostdinc++ -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/bin/ -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/lib/ -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/include -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/sys-include -fno-checking -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/../libgcc -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/libsupc++ -std=gnu++98 -D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=localename.lo -g -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -D_GNU_SOURCE -std=gnu++11 -fchar8_t -c ../../../../../libstdc++-v3/src/c++98/localename.cc  -fPIC -DPIC -D_GLIBCXX_SHARED -o localename.o
> libtool: compile:  /tmp/tmp-gcc-12.3.0/source/build/./gcc/xgcc -shared-libgcc -B/tmp/tmp-gcc-12.3.0/source/build/./gcc -nostdinc++ -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/bin/ -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/lib/ -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/include -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/sys-include -fno-checking -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/../libgcc -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/libsupc++ -std=gnu++98 -D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=math_stubs_float.lo -g -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -D_GNU_SOURCE -c ../../../../../libstdc++-v3/src/c++98/math_stubs_float.cc  -fPIC -DPIC -D_GLIBCXX_SHARED -o math_stubs_float.o
> /bin/sh ../../libtool --tag CXX --tag disable-shared   --mode=compile /tmp/tmp-gcc-12.3.0/source/build/./gcc/xgcc -shared-libgcc -B/tmp/tmp-gcc-12.3.0/source/build/./gcc -nostdinc++ -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/bin/ -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/lib/ -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/include -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/sys-include   -fno-checking -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/../libgcc -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/libsupc++   -std=gnu++98 -prefer-pic -D_GLIBCXX_SHARED -fno-implicit-templates  -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2  -fdiagnostics-show-location=once   -ffunction-sections -fdata-sections  -frandom-seed=math_stubs_long_double.lo  -g -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -D_GNU_SOURCE  -c -o math_stubs_long_double.lo ../../../../../libstdc++-v3/src/c++98/math_stubs_long_double.cc
> make[6]: *** [bitmap_allocator.lo] Error 1
> make[6]: *** Waiting for unfinished jobs....
> libtool: compile:  /tmp/tmp-gcc-12.3.0/source/build/./gcc/xgcc -shared-libgcc -B/tmp/tmp-gcc-12.3.0/source/build/./gcc -nostdinc++ -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/bin/ -B/progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/lib/ -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/include -isystem /progs/all/opensource/gcc/12.3.0/x86_64-pc-linux-gnu/sys-include -fno-checking -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/../libgcc -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include -I/tmp/tmp-gcc-12.3.0/source/libstdc++-v3/libsupc++ -std=gnu++98 -D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=math_stubs_long_double.lo -g -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -D_GNU_SOURCE -c ../../../../../libstdc++-v3/src/c++98/math_stubs_long_double.cc  -fPIC -DPIC -D_GLIBCXX_SHARED -o math_stubs_long_double.o
> ../../../../../libstdc++-v3/src/c++98/ios_locale.cc:59:12: error: template-id ‘operator bool<>’ for ‘std::basic_ios<char>::operator void*() const’ does not match any template declaration
>    59 |   template basic_ios<char>::operator void*() const;
>       |            ^~~~~~~~~~~~~~~
> In file included from /tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/ios:44,
>                  from ../../../../../libstdc++-v3/src/c++98/ios_locale.cc:29:
> /tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_ios.h:117:16: note: candidate is: ‘std::basic_ios<_CharT, _Traits>::operator bool() const [with _CharT = char; _Traits = std::char_traits<char>]’
>   117 |       explicit operator bool() const
>       |                ^~~~~~~~
> ../../../../../libstdc++-v3/src/c++98/ios_locale.cc:61:12: error: template-id ‘operator bool<>’ for ‘std::basic_ios<wchar_t>::operator void*() const’ does not match any template declaration
>    61 |   template basic_ios<wchar_t>::operator void*() const;
>       |            ^~~~~~~~~~~~~~~~~~
> /tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_ios.h:117:16: note: candidate is: ‘std::basic_ios<_CharT, _Traits>::operator bool() const [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>]’
>   117 |       explicit operator bool() const
>       |                ^~~~~~~~
> make[6]: *** [ios_locale.lo] Error 1
> make[6]: Leaving directory `/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src/c++98'
> make[5]: *** [all-recursive] Error 1
> make[5]: Leaving directory `/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3/src'
> make[4]: *** [all-recursive] Error 1
> make[4]: Leaving directory `/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3'
> make[3]: *** [all] Error 2
> make[3]: Leaving directory `/tmp/tmp-gcc-12.3.0/source/build/x86_64-pc-linux-gnu/libstdc++-v3'
> make[2]: *** [all-stage1-target-libstdc++-v3] Error 2
> make[2]: Leaving directory `/tmp/tmp-gcc-12.3.0/source/build'
> make[1]: *** [stage1-bubble] Error 2
> make[1]: Leaving directory `/tmp/tmp-gcc-12.3.0/source/build'
> make: *** [all] Error 2
>
> I'm using CentOS 7.9 (old OS, I am aware) and the following setup:
>
> configure \
>       --prefix=<prefix-dir> \
>       --disable-multilib
>
> Has anyone faced anything similar or has any clues on how to fix it?

Stop injecting -std=c++17 into the build flags.


More information about the Gcc-help mailing list