This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Trying to cross build a native compiler for arm-linux on x86_64 linux currently fails to build, if the libgmp development files are not available for the build system. This works with 4.7, but fails with 4.8. The build fails with: TARGET_CPU_DEFAULT="" \ HEADERS="auto-build.h ansidecl.h" DEFINES="" \ /bin/bash ../../src/gcc/mkconfig.sh bconfig.h g++ -c -g -O2 -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -Ibuild -I../../src/gcc -I../../src/gcc/build -I../../src/gcc/../include -I../../src/gcc/../libcpp/include -I../../src/gcc/../libdecnumber -I../../src/gcc/../libdecnumber/dpd -I../libdecnumber -I../../src/gcc/../libbacktrace -DCLOOG_INT_GMP \ -o build/genconstants.o ../../src/gcc/genconstants.c In file included from /usr/include/x86_64-linux-gnu/sys/resource.h:25:0, from ../../src/gcc/system.h:395, from ../../src/gcc/genconstants.c:28: /usr/include/x86_64-linux-gnu/bits/resource.h:131:18: error: declaration does not declare anything [-fpermissive] In file included from ../../src/gcc/genconstants.c:28:0: ../../src/gcc/system.h:444:23: error: declaration of C function 'void* sbrk(int)' conflicts with Searching the archive and ML this is supposed to work according to PR 35051, as described in http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00041.html When building the auto-build.h, all the configure tests including the system.h header fail to build with configure:10361: gcc -c -I../../../src/gcc -I../../../src/gcc/../include conftest.c >&5 In file included from ../../../src/gcc/system.h:641:0, from conftest.c:116: /usr/include/gmp.h:69:24: fatal error: gmp-x86_64.h: No such file or directory compilation terminated. And at least all the HAVE_DECL_* defines are set to 0 instead of 1. [side note: can we keep the temporary directory for this? it's a bit strange that this directory is removed during the build, and can't be looked at. The build continues after the configure, and then fails later] I checked that defining GENERATOR_FILE for this configure step to build the auto-build.h lets me to cross build the native compiler, and the resulting build seems to work on the target platform. However I can't find any other documentation for GENERATOR_FILE, so I'm unsure if that's the right thing to do. Richard did introduce the conditional include of gmp.h based on GENERATOR_FILE back in 2008, and Steven did define this for some object files built for the host, but not the build in 2012: 2012-07-08 Steven Bosscher <steven@gcc.gnu.org> * Makefile.in (gengtype-lex.o, gengtype-parse.o, gengtype-state.o, gengtype.o): Add -DGENERATOR_FILE manually for host gengtype objects. Is just setting _DGENERATOR_FILE for the auto-build.h build the right thing to do? If yes, ok for the 4.8 branch and the trunk? I didn't yet figure out why this works with 4.7. Matthias
Attachment:
gcc-auto.diff
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |