This is the mail archive of the crossgcc@sourceware.cygnus.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more infromation.


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

Re: i860 Target


Hum...

I am using binutils and gcc to build i860 ELF images for the MBX860 and
MBX821. Perhaps you are right that the i860-*-elf target is broken. I
specified --target=powerpc-rtems during configure. As far as I can tell,
there is absolutely nothing specific to RTEMS in this configuration
other than the build of a dummy crt0.o whose source is contained in
newlib. You need this dummy crt0.o for the configure tests that check
whether the compiler can create executable. This dummy crt0.o should
never be used in linking real embedded applications. You should get the
latest patches to gcc and binutils from
ftp://ftp.oarcorp.com/pub/rtems/betas/rtems-4.5.0-beta/c_tools/source/.
Rename the target if you don't like powerpc-rtems.

Notes:

Use the current snapshot of the binutils. The linker in 2.9.1 is buggy
and may overlap some output sections. This problem is known and is
documented in the binutils email archive.

I had to specify t-ppc rather than t-ppcasm in the configure script for
the powerpc-rtems target. The t-ppcasm file tries to build all the
multilib variants of the libraries, which failed for me on the lin
variant. Besides, I only need the big-endian default and nof
(soft-float) variants. Why clutter up disk space and waste time building
unnecessary libraries.

Kai Ruottu wrote:
> 
> Sreedhar Sampath wrote:
> >
> > I was wondering if any one of you could tell me if gcc has a cross
> > compiler which could compile for i860 machine.
> 
>  The current release, gcc-2.95.2 has support for 'i860-*-sysv3*'
> and 'i860-*-sysv4*', which you can equalize with 'i860-*-coff'
> and 'i860-*-elf', if aiming at an embedded target. So you can
> build a compiler which produces i860 assembly code, either for
> COFF or ELF...
> 
>  But you probably are interested in the things handling the stuff
> AFTER the compiling, ie assembling and linking... Unfortunately
> these are the missing/unimplemented components now. The 'binutils'
> subdir will be built for 'i860-coff' or 'i860-elf', but the 'gas'
> and 'ld' subdirs will not, if trying either target with recent
> binutils sources.
> 
>  The 'gas/config/tc-i860.*' do exist, so in some time someone was
> adding the gas-support into GNU binutils, but just "enabling" the
> 'i860-*-coff' or 'i860-*-elf' by adding these entries and their
> binary format into 'gas/configure', will not work immediately. I
> know, I tried... The 'tc-i860.c' has things which are related to
> the 'aout' binary format (it needs defines from the 'aout_gnu.h'),
> but then there aren't things like 'i860-*-aout' in the config
> files...
> 
>  So the 'i860-coff' and 'i860-elf' targets need someone to port
> the GNU as and ld for them... Perhaps this has been (partly) done,
> but the results are lurking somewhere else (than in the GNU binutils
> sources). Or using GCC and GNU binutils with the native assembler
> and linker on 'i860-sysv3' and 'i860-sysv4' machines has been the
> only need, and that being enough, so no work done to get 'gas' and
> 'ld' work for i860-coff/elf...
> 
> Cheers, Kai
> 
> ------
> Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
> Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com

-- 
Charles-Antoine Gauthier
Institute for Information Technology   Institut de technologie de
l'information
National Research Council of Canada    Conseil national de recherches du
Canada

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com


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