tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Upgrading toolchain gcc to 7.2

I'm actually running this on netbsd-current just to see if the steps I'm taking are correct, but the config.log for minix says:

configure:3811: result: unsupported
configure:3833: checking how to run the C preprocessor
configure:3864:  /home/radzio/experiments/obj.evbearm-el/tools/gcc/build/./gcc/xgcc -B/home/radzio/experiments/obj.evbearm-el/tools/gcc/build/./gcc/ -B/home/radzio/experiments/minix/../obj.evbearm-el/tooldir.Linux-4.14.5-1-ARCH-x86_64/arm-elf32-minix/bin/ -B/home/radzio/experiments/minix/../obj.evbearm-el/tooldir.Linux-4.14.5-1-ARCH-x86_64/arm-elf32-minix/lib/ -isystem /home/radzio/experiments/minix/../obj.evbearm-el/tooldir.Linux-4.14.5-1-ARCH-x86_64/arm-elf32-minix/include -isystem /home/radzio/experiments/minix/../obj.evbearm-el/tooldir.Linux-4.14.5-1-ARCH-x86_64/arm-elf32-minix/sys-include    -E  conftest.c
In file included from conftest.c:10:0:
/usr/include/limits.h:124:26: error: no include path in which to search for limits.h
 # include_next <limits.h>
configure:3864: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "GNU C Runtime Library"
| #define PACKAGE_TARNAME "libgcc"
| #define PACKAGE_VERSION "1.0"
| #define PACKAGE_STRING "GNU C Runtime Library 1.0"
| #define PACKAGE_URL ""
| /* end confdefs.h.  */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
|              Syntax error
configure:3864:  /home/radzio/experiments/obj.evbearm-el/tools/gcc/build/./gcc/xgcc -B/home/radzio/experiments/obj.evbearm-el/tools/gcc/build/./gcc/ -B/home/radzio/experiments/minix/../obj.evbearm-el/tooldir.Linux-4.14.5-1-ARCH-x86_64/arm-elf32-minix/bin/ -B/home/radzio/experiments/minix/../obj.evbearm-el/tooldir.Linux-4.14.5-1-ARCH-x86_64/arm-elf32-minix/lib/ -isystem /home/radzio/experiments/minix/../obj.evbearm-el/tooldir.Linux-4.14.5-1-ARCH-x86_64/arm-elf32-minix/include -isystem /home/radzio/experiments/minix/../obj.evbearm-el/tooldir.Linux-4.14.5-1-ARCH-x86_64/arm-elf32-minix/sys-include    -E -traditional-cpp  conftest.c
In file included from /usr/include/features.h:424:0,
                 from /usr/include/assert.h:36,
                 from conftest.c:13:
/usr/include/sys/cdefs.h:30:3: error: #error "You need a ISO C conforming compiler to use the glibc headers"
 # error "You need a ISO C conforming compiler to use the glibc headers"
configure:3864: /lib/cpp  conftest.c
/home/radzio/experiments/minix/external/gpl3/gcc/dist/libgcc/configure: line 1456: /lib/cpp: No such file or directory
configure:3864: $? = 127
configure: failed program was:
configure:3953: error: in `/home/radzio/experiments/obj.evbearm-el/tools/gcc/build/arm-elf32-minix/libgcc':
configure:3956: error: C preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.

And what it outputs there is true. I can't see limits.h in the obj.evbearm-el directory. The same for current netbsd.

Have You ever encountered something like this?

2018-01-10 9:32 GMT+01:00 matthew green <>:
> I have already tried to follow the commands in README.mknative, but it
> seems I'm doing something wrong.
> On the host (!= target) I have trouble executing step 3:  In src/tools/gcc,
> do "nbmake-MACHINE HAVE_GCC=48 bootstrap-libgcc".

HAVE_GCC=<n> is something that controls which GCC netbsd builds
and installs.  what tree are you running this in?  it doesn't
have GC 4.8 anymore and i wouldn't expect this to be usable on
anything except netbsd-7 branch hosts.

> The command I run:
> ../../../obj.netbsd/tooldir.Linux-4.13.3-1-ARCH-i686/bin/nbmake-evbearm-el
> MKGCCCMDS=yes  HAVE_GCC=48 bootstrap-libgcc
> is failing with the reason:
> checking how to run the C preprocessor... /lib/cpp
> configure: error: in
> `/home/rchmiela/experiments/obj.netbsd/tools/gcc/build/arm--netbsdelf-eabi/libgcc':
> configure: error: C preprocessor "/lib/cpp" fails sanity check
> See `config.log' for more details.
> nbgmake: *** [configure-target-libgcc] Error 1

look in this config.log and see what is up.  often the errors
are in the middle sections of the file and not obvious to find.

> Should I be running this command on target? Or maybe it's the fault of my
> host gcc (7.2.0)?

not really understanding how your setup is (for minix, or how
do you want to use this?) it's hard to give further advice.
can you explain how minix's current setup works, compared to

i do hope to have GCC 6 imported in the coming weeks, but i
have not looked at GCC 7 yet.

> > On Tue, Jan 09, 2018 at 08:22:25AM +0100, rchmielarz . wrote:
> > > 3) A more general question about the build system. I understand that
> > > /tools/gcc has the makefiles for building the cross-compilation
> > toolchain.
> > > But what is the purpose of /external/gpl3/gcc/lib and usr.bin. Why do
> > they
> > > have to be separate from the ../dist? And how have You came up what files
> > > to include in those tools?

the makefiles in this directory build the "native cc" that we ship
in /usr/bin/cc, etc.  they are targetted for the installed system
and are not considered cross compilers, though they are built with
a cross compiler (the tools/gcc one.)


Home | Main Index | Thread Index | Old Index