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". -- Xi Ruoyao <ryxi@xxxxxxxxxxxxxxxxx> School of Aerospace Science and Technology, Xidian University