--target= for building gcc cross-compiler?

Kai Ruottu kai.ruottu@wippies.com
Thu Jan 21 10:48:00 GMT 2010


Németh Márton wrote:
> Hi,
>
> I would like to buld a gcc cross compiler for Freescale MPC5554 [1][2] and for
> Freescale MPC5534 [3][4]. These are PowerPC based processors with e200z6 and
> e200z3 core respectively.
>
> The goal would be to compile Linux kernel for these processors using the cross
> compiler.
>
> I don't really know how to find out the proper --target= setting for binutils
> and gcc build. I found "powerpc" and "ppc" on different home pages. I also
> found on some pages to add "-elf" also. I also found a list on page
> http://gcc.gnu.org/install/specific.html but I'm not sure what to use.
>
> I also tried ../gcc-4.4.2/configure --target=help without success.
>
> Is there any description where I can find out the right --target= setting?
>   
Only the 'e500' type and AltiVec type cores seem to require a special 
target type, 'powerpc-*spe*' and
'powerpc-*altivec*'.   But the base  template for your target name would 
be 'powerpc-*linux*'  because
you are going to compile a Linux kernel with it.  These two special e500 
and AltiVec variations would
require you to use either the 'powerpc-*linux-gnuspe' or 
'powerpc-*linux-gnualtivec' target name, the
rest would be handled with the usual 'powerpc-*linux-gnu' target name.

Some PPC specialist could tell if the 'e200z*' cores are those 'e500' 
type cores and therefore needing
a target name like 'powerpc-linux-gnuspe'  - no "custom" name for the 
vendor like "marton", in your
case a target name like 'powerpc-marton-linux-gnuspe' could be possible....

I would guess the usual 'powerpc-linux-gnu' or 
'powerpc-marton-linux-gnu' (you want to emphasize that
this is YOUR self-made GCC for YOUR self-made Linux) would suit to your 
purpose.  The produced
GCC would be capable to produce code for any CPU-variation the usual 
type without 'spe' or 'altivec'
supports, using the '-mcpu=something' etc. options.

The 'gcc/config/rs6000/rs6000.h' lists the possible '-mcpu=' variations 
but among them there is nothing
like 'e200', only 'e300' and 'e500' :(   At least with gcc-4.4.x ....




More information about the Gcc-help mailing list