Mere cosmetics, but the error is contradicting it's own hint in a confusing way. $ ../../src/gcc-13.mine/configure --enable-languages=c++,lto,lto configure: error: The following requested languages could not be built: lto Supported languages are: c,c,c++,fortran,go,lto,objc,obj-c++ or other dups like $ ../../src/gcc-13.mine/configure --enable-languages=c++,c++,lto configure: error: The following requested languages could not be built: c++ Supported languages are: c,c,c++,fortran,go,lto,objc,obj-c++ I'm not sure why duplicates are not ignored silently.
I thought this was fixed at one point.
Confirmed. [apinski@linux oo]$ ../configure --enable-languages=c++,c++,lto checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether ln works... yes checking whether ln -s works... yes checking for a sed that does not truncate output... /usr/bin/sed checking for gawk... gawk checking for libatomic support... yes checking for libitm support... yes checking for libsanitizer support... yes checking for libvtv support... yes checking for libphobos support... yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for gcc option to accept ISO C99... -std=gnu99 checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether g++ accepts -static-libstdc++ -static-libgcc... no checking for gnatbind... no checking for gnatmake... no checking whether compiler driver understands Ada and is recent enough... no checking for gdc... no checking whether the D compiler works... no checking how to compare bootstrapped objects... cmp --ignore-initial=16 $$f1 $$f2 checking for objdir... .libs configure: WARNING: using in-tree isl, disabling version check configure: error: The following requested languages could not be built: c++ Supported languages are: c,c,c++,fortran,go,lto,objc,obj-c++
So there are two issues but I don't know how to solve the second part of the issue. The first issue is there is a missing g for the flags of the s command of the sed command here: missing_languages=`echo "$missing_languages" | sed "s/,$language,/,/"` But after doing that it still fails because if you had: ,c++,c++,lto, It matches ,c++, and replaces it with , but then sed does not reconsiders the , again and does not match c++. Someone with some better shell scripting knowledge should look into this.
missing_languages=`echo "$missing_languages" | sed -e ':loop' -e "s/,$language,/,/" -e 't loop'`