fatal error: asm/errno.h: No such file or directory during bootstrap

Georg-Johann Lay avr@gjlay.de
Wed Jan 17 15:23:00 GMT 2018


On 17.01.2018 16:15, Xi Ruoyao wrote:
> On 2018-01-17 15:54 +0100, Georg-Johann Lay wrote:
>> $ echo "#include <errno.h>" | gcc -xc - -H
>> . /usr/include/errno.h
>> .. /usr/include/features.h
>> ... /usr/include/x86_64-linux-gnu/sys/cdefs.h
>> .... /usr/include/x86_64-linux-gnu/bits/wordsize.h
>> ... /usr/include/x86_64-linux-gnu/gnu/stubs.h
>> .... /usr/include/x86_64-linux-gnu/gnu/stubs-64.h
>> .. /usr/include/x86_64-linux-gnu/bits/errno.h
>> ... /usr/include/linux/errno.h
>> .... /usr/include/x86_64-linux-gnu/asm/errno.h
>> ..... /usr/include/asm-generic/errno.h
>> ...... /usr/include/asm-generic/errno-base.h
>>
>> Any ideas?
>>
>> For a "simple" build with
>> ../../gcc.gnu.org/trunk/configure --prefix=/local/gnu/install/gcc-8-host
>> --enable-languages=c,c++ --enable-checking=release --disable-bootstrap
>> --build=x86_64-linux-gnu
>>
>> the same occurs.
>>
> 
> Ubuntu 16.04 have "multiarch" directory.  For example <asm/errno.h> is
> "/usr/include/x86_64-linux-gnu/asm/errno.h" on x86-64.  To make GCC recognize
> it you need configuration option "--enable-multiarch".

hmm, I also found

https://gcc.gnu.org/PR48879

 From all of my knowledge, a "bootstrap" is a plain configure and it
should work without any special options?

PR48879 and the link above suggest linking /usr/include/asm, but
formally anything that requires to be su is highly questionabe.

FYI, to bootstrap I am using

$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 
5.4.0-6ubuntu1~16.04.5' 
--with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs 
--enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ 
--prefix=/usr --program-suffix=-5 --enable-shared 
--enable-linker-build-id --libexecdir=/usr/lib 
--without-included-gettext --enable-threads=posix --libdir=/usr/lib 
--enable-nls --with-sysroot=/ --enable-clocale=gnu 
--enable-libstdcxx-debug --enable-libstdcxx-time=yes 
--with-default-libstdcxx-abi=new --enable-gnu-unique-object 
--disable-vtable-verify --enable-libmpx --enable-plugin 
--with-system-zlib --disable-browser-plugin --enable-java-awt=gtk 
--enable-gtk-cairo 
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre 
--enable-java-home 
--with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 
--with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 
--with-arch-directory=amd64 
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc 
--enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 
--with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic 
--enable-checking=release --build=x86_64-linux-gnu 
--host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.5)


Johann



More information about the Gcc-help mailing list