From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.oetec.com (mail.oetec.com [108.160.241.186]) by sourceware.org (Postfix) with ESMTPS id 443853853809 for ; Tue, 10 May 2022 00:54:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 443853853809 X-Spam-Status: No, score=-3.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, NICE_REPLY_A, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-oetec-MailScanner-From: dclarke@blastwave.org X-oetec-MailScanner-SpamCheck: not spam, SpamAssassin (not cached, score=-4.209, required 6, autolearn=not spam, ALL_TRUSTED -1.00, BAYES_00 -1.90, DKIM_SIGNED 0.10, DKIM_VALID -0.10, DKIM_VALID_AU -0.10, DKIM_VALID_EF -0.10, NICE_REPLY_A -1.10, T_SCC_BODY_TEXT_LINE -0.01, URIBL_BLOCKED 0.00) X-oetec-MailScanner: Found to be clean X-oetec-MailScanner-ID: 24A0rq7D030961 X-oetec-MailScanner-Information: Please contact oetec for more information Received: from [172.16.35.2] (cpeac202e7325b3-cmac202e7325b0.cpe.net.cable.rogers.com [99.253.170.241]) (authenticated bits=0) by mail.oetec.com (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 24A0rq7D030961 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Mon, 9 May 2022 20:53:55 -0400 Message-ID: <2db3724d-b2a0-6356-3d0b-d7716b5c8e38@blastwave.org> Date: Mon, 9 May 2022 20:53:52 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.1 Subject: Re: stage1 gcc bootstrap fails looking for bits/libc-header-start.h Content-Language: en-US To: Jonathan Wakely Cc: gcc-help References: <78ed50e6-c0b5-1002-49a4-e11ec14ee727@blastwave.org> From: Dennis Clarke In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-help@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-help mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 May 2022 00:54:04 -0000 On 5/9/22 14:51, Jonathan Wakely wrote: > On Mon, 9 May 2022, 18:16 Dennis Clarke via Gcc-help, > wrote: > >> >> Not sure what is causing this on a Linux armv7 32-bit machine but I have >> libc6-dev installed and that provides : >> >> # ls -lapb /usr/include/arm-linux-gnueabihf/bits/libc-header-start.h >> > > > But this is not a standard header location, so GCC won't look there. > > You need to use --enable-multiarch to use the Debian MultiArch directory > layout. > Sadly things have not worked out any better. :( Configure still looks nice : io$ io$ uname -a Linux io 4.4.194 #52 SMP Tue Oct 26 08:35:58 UTC 2021 armv7l GNU/Linux io$ gcc --version gcc (Debian 8.3.0-6) 8.3.0 Copyright (C) 2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. io$ All the usual baseline tools are around. Also gmp/mpfr/mpc are extracted in the source tree as per normal. io$ CC='gcc -march=armv7-a -mtune=cortex-a17 -mfpu=vfpv4-d16 -marm' \ > CXX='g++ -march=armv7-a -mtune=cortex-a17 -mfpu=vfpv4-d16 -marm' \ > LD_RUN_PATH='/opt/gcc/imed/gcc12/lib:/opt/bw/lib' \ > ../gcc-12.1.0/configure --prefix=/opt/gcc/imed/gcc12 \ > --enable-multiarch \ > --disable-nls --enable-threads=posix --enable-shared \ > --with-gmp=/opt/bw --with-mpfr=/opt/bw --with-mpc=/opt/bw \ > --enable-bootstrap --enable-languages=ada,c,c++,fortran \ > --enable-stage1-languages=c,c++ --enable-stage1-checking=misc checking build system type... armv7l-unknown-linux-gnueabihf checking host system type... armv7l-unknown-linux-gnueabihf checking target system type... armv7l-unknown-linux-gnueabihf 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... /bin/sed checking for gawk... no checking for mawk... mawk 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 -march=armv7-a -mtune=cortex-a17 -mfpu=vfpv4-d16 -marm 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 -march=armv7-a -mtune=cortex-a17 -mfpu=vfpv4-d16 -marm accepts -g... yes checking for gcc -march=armv7-a -mtune=cortex-a17 -mfpu=vfpv4-d16 -marm option to accept ISO C89... none needed checking for gcc -march=armv7-a -mtune=cortex-a17 -mfpu=vfpv4-d16 -marm option to accept ISO C99... none needed checking whether we are using the GNU C++ compiler... yes checking whether g++ -march=armv7-a -mtune=cortex-a17 -mfpu=vfpv4-d16 -marm accepts -g... yes checking whether g++ accepts -static-libstdc++ -static-libgcc... yes checking for gnatbind... gnatbind checking for gnatmake... gnatmake checking whether compiler driver understands Ada... yes 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 checking for the correct version of gmp.h... yes checking for the correct version of mpfr.h... yes checking for the correct version of mpc.h... yes checking for the correct version of the gmp/mpfr/mpc libraries... yes checking for isl 0.15 or later... no required isl version is 0.15 or later The following languages will be built: c,ada,c++,fortran,lto *** This configuration is not supported in the following subdirectories: gotools target-libphobos target-zlib target-libgo target-libffi target-libobjc target-liboffloadmic (Any other directories should still work fine.) checking for default BUILD_CONFIG... bootstrap-debug checking for --enable-vtable-verify... no checking for bison... no checking for byacc... no checking for yacc... no checking for bison... no checking for gm4... no checking for gnum4... no checking for m4... m4 checking for flex... no checking for lex... no checking for flex... no checking for makeinfo... no /opt/bw/build/gcc-12.1.0/missing: 81: /opt/bw/build/gcc-12.1.0/missing: makeinfo: not found checking for expect... no checking for runtest... no checking for ar... (cached) /usr/bin/ar checking for as... (cached) /usr/bin/as checking for dlltool... no checking for dsymutil... no checking for ld... ld checking for lipo... no checking for nm... (cached) /usr/bin/nm -p checking for ranlib... (cached) /usr/bin/ranlib checking for strip... strip checking for windres... no checking for windmc... no checking for objcopy... objcopy checking for objdump... objdump checking for otool... no checking for readelf... readelf checking for cc... cc checking for c++... c++ checking for gcc... gcc checking for gfortran... no checking for gccgo... no checking for gdc... no checking for ar... no checking for ar... ar checking for as... no checking for as... as checking for dlltool... no checking for dlltool... no checking for dsymutil... no checking for dsymutil... no checking for ld... no checking for ld... ld checking for lipo... no checking for lipo... no checking for nm... no checking for nm... nm checking for objcopy... no checking for objcopy... objcopy checking for objdump... no checking for objdump... objdump checking for otool... no checking for otool... no checking for ranlib... no checking for ranlib... ranlib checking for readelf... no checking for readelf... readelf checking for strip... no checking for strip... strip checking for windres... no checking for windres... no checking for windmc... no checking for windmc... no checking where to find the target ar... host tool checking where to find the target as... host tool checking where to find the target cc... just compiled checking where to find the target c++... just compiled checking where to find the target c++ for libstdc++... just compiled checking where to find the target dlltool... host tool checking where to find the target dsymutil... host tool checking where to find the target gcc... just compiled checking where to find the target gfortran... just compiled checking where to find the target gccgo... host tool checking where to find the target gdc... host tool checking where to find the target ld... host tool checking where to find the target lipo... host tool checking where to find the target nm... host tool checking where to find the target objcopy... host tool checking where to find the target objdump... host tool checking where to find the target otool... host tool checking where to find the target ranlib... host tool checking where to find the target readelf... host tool checking where to find the target strip... host tool checking where to find the target windres... host tool checking where to find the target windmc... host tool checking whether to enable maintainer-specific portions of Makefiles... no configure: creating ./config.status config.status: creating Makefile io$ However a while later we see make bootstrap fail : . . . /opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.004/./gcc/xgcc -B/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.004/./gcc/ -B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/bin/ -B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/lib/ -isystem /opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/include -isystem /opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/sys-include -fno-checking -g -O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -fno-inline -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fPIC -fno-inline -I. -I. -I../.././gcc -I../../../gcc-12.1.0/libgcc -I../../../gcc-12.1.0/libgcc/. -I../../../gcc-12.1.0/libgcc/../gcc -I../../../gcc-12.1.0/libgcc/../include -DHAVE_CC_TLS -o _clear_cache.o -MT _clear_cache.o -MD -MP -MF _clear_cache.dep -DL_clear_cache -xassembler-with-cpp -c ../../../gcc-12.1.0/libgcc/config/arm/lib1funcs.S -include _clear_cache.vis /opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.004/./gcc/xgcc -B/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.004/./gcc/ -B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/bin/ -B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/lib/ -isystem /opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/include -isystem /opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/sys-include -fno-checking -g -O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -fno-inline -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fPIC -fno-inline -I. -I. -I../.././gcc -I../../../gcc-12.1.0/libgcc -I../../../gcc-12.1.0/libgcc/. -I../../../gcc-12.1.0/libgcc/../gcc -I../../../gcc-12.1.0/libgcc/../include -DHAVE_CC_TLS -o _muldi3.o -MT _muldi3.o -MD -MP -MF _muldi3.dep -DL_muldi3 -c ../../../gcc-12.1.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS In file included from ../../../gcc-12.1.0/libgcc/../gcc/tsystem.h:87, from ../../../gcc-12.1.0/libgcc/libgcc2.c:27: /usr/include/stdio.h:27:10: fatal error: bits/libc-header-start.h: No such file or directory 27 | #include | ^~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. make[3]: *** [Makefile:501: _muldi3.o] Error 1 make[3]: Leaving directory '/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.004/armv7l-unknown-linux-gnueabihf/libgcc' make[2]: *** [Makefile:24186: all-stage1-target-libgcc] Error 2 make[2]: Leaving directory '/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.004' make[1]: *** [Makefile:29980: stage1-bubble] Error 2 make[1]: Leaving directory '/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.004' make: *** [Makefile:30617: bootstrap4] Error 2 Command exited with non-zero status 2 io$ So that sort of looks the same but also I am not sure what is needed here. As usual the package libc6-dev provides : /usr/include/arm-linux-gnueabihf/bits/libc-header-start.h However that is in a weird place. Do I need host/target/foobar etc? -- Dennis Clarke RISC-V/SPARC/PPC/ARM/CISC UNIX and Linux spoken GreyBeard and suspenders optional