build issues for gcc-canadian-cross
Closed this issue · 1 comments
Happy New Year!
Unfortunately the last changes make some trouble - again the problem is, that /usr/include
is used.
No idea why the sysroot is ignored there. https://gcc.gnu.org/onlinedocs/gcc/Directory-Options.html
But i don't understand this part:
Add the directory dir to the list of directories to be searched for header files during preprocessing. If dir begins with ‘=’ or $SYSROOT, then the ‘=’ or $SYSROOT is replaced by the sysroot prefix; see --sysroot and -isysroot.
includes are never prefixed with ‘=’ or $SYSROOT
, at least i never saw this so far?! btw: it works if i add the ‘=’
manually in the build-shell. 🤷♂️
errorlog:
Making all in include
make[4]: Entering directory '/home/mhaase/fdt.bobrecipes/dev/build/devel/compat/gcc-canadian-cross/x86_64-bob_isolation-linux-gnu/1/workspace/build/x86_64-bob_compat-linux-gnu/libstdc++-v3/include'
mkdir -p ./x86_64-bob_compat-linux-gnu/bits/stdc++.h.gch
mkdir -p ./x86_64-bob_compat-linux-gnu/bits/stdc++.h.gch
x86_64-bob_compat-linux-gnu-c++ --sysroot=/home/mhaase/fdt.bobrecipes/dev/dist/devel/compat/cross-toolchain/1/workspace/usr/bin/../sysroots/x86_64-bob_isolation-linux-gnu -x c++-header -nostdinc++ -g -O2 -D_GNU_SOURCE -I/home/mhaase/fdt.bobrecipes/dev/build/devel/compat/gcc-canadian-cross/x86_64-bob_isolation-linux-gnu/1/workspace/build/x86_64-bob_compat-linux-gnu/libstdc++-v3/include/x86_64-bob_compat-linux-gnu -I/home/mhaase/fdt.bobrecipes/dev/build/devel/compat/gcc-canadian-cross/x86_64-bob_isolation-linux-gnu/1/workspace/build/x86_64-bob_compat-linux-gnu/libstdc++-v3/include -I/home/mhaase/fdt.bobrecipes/dev/src/devel/compat/gcc/1/workspace/libstdc++-v3/libsupc++ -I/usr/include -O2 -g -std=gnu++0x /home/mhaase/fdt.bobrecipes/dev/src/devel/compat/gcc/1/workspace/libstdc++-v3/include/precompiled/stdc++.h \
-o x86_64-bob_compat-linux-gnu/bits/stdc++.h.gch/O2ggnu++0x.gch
x86_64-bob_compat-linux-gnu-c++ --sysroot=/home/mhaase/fdt.bobrecipes/dev/dist/devel/compat/cross-toolchain/1/workspace/usr/bin/../sysroots/x86_64-bob_isolation-linux-gnu -x c++-header -nostdinc++ -g -O2 -D_GNU_SOURCE -I/home/mhaase/fdt.bobrecipes/dev/build/devel/compat/gcc-canadian-cross/x86_64-bob_isolation-linux-gnu/1/workspace/build/x86_64-bob_compat-linux-gnu/libstdc++-v3/include/x86_64-bob_compat-linux-gnu -I/home/mhaase/fdt.bobrecipes/dev/build/devel/compat/gcc-canadian-cross/x86_64-bob_isolation-linux-gnu/1/workspace/build/x86_64-bob_compat-linux-gnu/libstdc++-v3/include -I/home/mhaase/fdt.bobrecipes/dev/src/devel/compat/gcc/1/workspace/libstdc++-v3/libsupc++ -I/usr/include -O2 -g /home/mhaase/fdt.bobrecipes/dev/src/devel/compat/gcc/1/workspace/libstdc++-v3/include/precompiled/stdc++.h -o x86_64-bob_compat-linux-gnu/bits/stdc++.h.gch/O2g.gch
In file included from /usr/include/features.h:392:0,
from /home/mhaase/fdt.bobrecipes/dev/build/devel/compat/gcc-canadian-cross/x86_64-bob_isolation-linux-gnu/1/workspace/build/x86_64-bob_compat-linux-gnu/libstdc++-v3/include/x86_64-bob_compat-linux-gnu/bits/os_defines.h:39,
from /home/mhaase/fdt.bobrecipes/dev/build/devel/compat/gcc-canadian-cross/x86_64-bob_isolation-linux-gnu/1/workspace/build/x86_64-bob_compat-linux-gnu/libstdc++-v3/include/x86_64-bob_compat-linux-gnu/bits/c++config.h:533,
from /home/mhaase/fdt.bobrecipes/dev/build/devel/compat/gcc-canadian-cross/x86_64-bob_isolation-linux-gnu/1/workspace/build/x86_64-bob_compat-linux-gnu/libstdc++-v3/include/cassert:43,
from /home/mhaase/fdt.bobrecipes/dev/src/devel/compat/gcc/1/workspace/libstdc++-v3/include/precompiled/stdc++.h:33:
/usr/include/features-time64.h:21:10: fatal error: bits/timesize.h: No such file or directory
#include <bits/timesize.h>
^~~~~~~~~~~~~~~~~
btw: on our jenkins it works, maybe because of a more matching (older) system (toolchain).
UPDATE:
the canadian cross thing seems to be an official special case.
no idea what this means, but maybe we could patch the sources of libstdc++-v3's configure files
:
- GLIBCXX_INCLUDES="$GLIBCXX_INCLUDES -I\${includedir}
+ GLIBCXX_INCLUDES="$GLIBCXX_INCLUDES -I=\${includedir}
Thanks for the hints. Turns out to be a known problem: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71212
With the fix in #187 applied, I cannot reproduce the issue. Can you double check on your side as well?