This is the mail archive of the gcc-help@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]

Re: [Fwd: cross compile gcc 3 in cygwin for vxworks]


Matt Harrington wrote:

I am attempting to cross compile gcc 3 under cygwin for
powerpc-wrs-vxworks

The binutils build is clean and easy; no problems.  The gcc build fails
after a good distance into the build.  The error is below, full configure
and make outputs can be found at:

http://underdogma.net/~matt/files/make.log
http://underdogma.net/~matt/files/conf.log

I would be happy building any gcc 3 if one is known to work.  Building it
on a different version of windows may also be an option as long as it will
still work under 2000 and xp.

Ok, I would choose to use only Linux with Cygwin or MinGW targeted crosstools for any builds, but this because producing only one toolchain and this only once, never updating it, is not what I like to do... Just for a fun I have produced 50 or so MinGW-hosted toolchains for Windoze hosts...

/home/matt/gcc-build/gcc/include/types/vxCpu.h:370:2: #error CPU is not
defined correctly

What does this row 370 tell? Maybe it does this :


-------------------- clip -------------------------
#if	(CPU==PPC403 || CPU==PPC505 || CPU==PPC601 || CPU==PPC603 || \
	 CPU==PPC604 || CPU==PPC860)
#define CPU_FAMILY      PPC
#endif  /* CPU_FAMILY==PPC */

/*
 * Check that CPU and CPU_FAMILY are now defined correctly.
 * If CPU is defined to be one of the above valid values then
 * the CPU_FAMILY will have been properly selected.
 * This is required in order to select the right headers
 * and definitions for that CPU in subsequent headers.
 * If CPU or CPU_FAMILY is not defined at this point,
 * we generate an error and abort the compilation.
 */

#if !defined(CPU) || !defined(CPU_FAMILY)
#error CPU is not defined correctly
#endif
-------------------- clip -------------------------

and fails because your build log told :

Fixing directory /usr/local/powerpc-wrs-vxworks/sys-include into /home/matt/gcc-build/gcc/include

and this fixing replaced all those 'PPC*' names into '__PPC*__' names
because this would be more "POSIX" compatible...

The lecture is: "Don't fix anything which you don't want being fixed!".
Why you wanted the VxWorks headers to be fixed for GCC by putting them
into the '.../sys-include' ?  Does VxWorks/PPC have a native-GCC and
when doing the "native build" for the same GCC version, the GCC
maintainer for VxWorks checked that also those VxWorks/PPC headers would
be fixed correctly?

Years ago I lost all my trust to the 'fixincludes' job which will be
done during the GCC build when the target has no native-GCC...


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]