This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


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

Re: Please help me.


On Wednesday 17 October 2001 04:39, hiroyuki matsumoto wrote:
> Message-ID: <49256AE8.002C32D5.00@notes.topcon.co.jp>
>
> How do you do.
>  I am an engineer in Japan.
>
>  Now, I am worried of that how to installing GCC cross-compiler for ARM.
>  I have failed in all though constructed many times.
>  Please help me.
>
>  The environment is as follows.
>  Cygwin         : 1.3.2
>  GCC            : gcc-core-3.0.1
>                       gcc-g++-3.0.1
>  BINUTILS    : binutils-2.11.2
>  NEWLIB      : newlib-1.9.0
>
>  HOST          : Windows98 machine  (i586-pc-cygwin)
>  TARGET      : ARM7 for embedded
>
>
>  And, the construction method is as follows.
>
> STEP1
>      Configure & Install the GNU binary utilities.
>
>      1  ./configure  --prefix=/tools          \
>                           --target=arm-elf
>
>      2  make cross
>      3  make install
>
>
> STEP2
>      1 cd /src/gcc-3.0.1
>      2 ln -s /src/newlib-1.9.0/newlib
>      3 ln -s /src/newlib-1.9.0/libgloss
>
>
> STEP3
>      Configure & Install the GCC.
>
>       1  ./configure  --prefix=/tools
>                            --target=arm-elf
> \
>                            --enable-languages=c,c++
> \
>                            --enable-multilib
> \
>                            --with-gnu-as
> \
>                            --with-gnu-ld
> \
>
> --with-include-headers=/src/newlib-1.9.0/newlib/libc/include     \
>                            --with-gnu-newlib
>
>       2  make cross
>       3  make install
>
>
> STEP4
>      Configure & Install the newlib.
>
>       1  ./configure   --prefix=/tools        \
>                             --target=arm-elf
>
>       2  make
>       3  make install
>
>
Hello,
	I think this build method should work, however I think it is preferred to 
build a bootstrap compiler, then newlib, then the full compiler. See "Getting 
Started with GNU", by William Gatliff (www.billgatliff.com under publications 
and presentations).

>  The following errors occurred when the my program was compiled
>  by the GCC compiler which constructed with these steps.
>
>       startup.o: undefined reference to `_SS_SoftwareInterrupt'
>       startup.o: undefined reference to `_SS_AbortPrefetch'
>       startup.o: undefined reference to `_SS_AbortData'
>       startup.o: undefined reference to `_SS_Reserved'
>       startup.o: undefined reference to `_SS_Irq'
>       startup.o: In function `_jump_to_main':
>       startup.o: undefined reference to `_main'
>       main.o:     In function `main'
>
>

I'm not familiar with the ARM, but these errors indicate you're missing an 
object file or library. Is startup.o you crt0.o file? If so, have you 
modified it for your hardware? Be sure to check out "Embed with GNU", it 
comes with newlib-1.9.0 as a texi document. Do a 'make info' in your 
build-newlib directory (for m68k-coff it puts it in 
<target>/libgloss/doc/porting.info.

Hope This Helps,
Larry Gray
larry@greenmotor.com

------
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]