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] |
Other format: | [Raw text] |
On Friday 22 October 2004 08:33 am, Toralf Lund wrote: > I'm now trying to build using gcc 3.3.3 (+ newlib) on my M68k setup, > where 2.95.3 was used earlier. Compilation works fine after a few minor > adjustments, but link fails with lots of unresolved symbols, including > missing start() and exit() - see linker output below. I'm using exactly > the same newlib setup as earlier, and identical build options for > cross-gcc as well as the actual app. > > Can anyone explain this? Has anything changed related to the way crt0 > etc. is handled? I use these patches for m68k-elf. You might have some luck with them. I haven't tried a m68k-coff target.
diff -uNr orig/gcc-3.3.3/gcc/config/m68k/t-m68kelf gcc-3.3.3/gcc/config/m68k/t-m68kelf --- orig/gcc-3.3.3/gcc/config/m68k/t-m68kelf Wed Jan 23 20:21:48 2002 +++ gcc-3.3.3/gcc/config/m68k/t-m68kelf Wed Apr 7 17:01:17 2004 @@ -21,6 +21,7 @@ INSTALL_LIBGCC = install-multilib # from ../t-svr4 -EXTRA_PARTS=crtbegin.o crtend.o +# EXTRA_PARTS=crtbegin.o crtend.o +EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o # no pic for now #CRTSTUFF_T_CFLAGS=-fpic
diff -uNr orig/newlib-1.12.0/libgloss/m68k/sim.ld newlib-1.12.0/libgloss/m68k/sim.ld --- orig/newlib-1.12.0/libgloss/m68k/sim.ld Wed Feb 28 13:41:57 2001 +++ newlib-1.12.0/libgloss/m68k/sim.ld Wed Apr 7 17:04:55 2004 @@ -8,17 +8,27 @@ MEMORY { - ram (rwx) : ORIGIN = 0x80000000, LENGTH = 1M + ram (rwx) : ORIGIN = 0x00010000, LENGTH = 1M } -PROVIDE (__stack = 0); +PROVIDE (__stack = 0x00010000); + +/* + * Initalize some symbols to be zero so we can reference them in the + * crt0 without core dumping. These functions are all optional, but + * we do this so we can have our crt0 always use them if they exist. + * This is so BSPs work better when using the crt0 installed gcc. + */ +PROVIDE (hardware_init_hook = 0); +PROVIDE (software_init_hook = 0); SECTIONS { .text : { CREATE_OBJECT_SYMBOLS - *(.text) + *(.text*) + *(.gnu.linkonce.t*) . = ALIGN(0x4); /* These are for running static constructors and destructors under ELF. */ @@ -31,7 +41,8 @@ KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) - *(.rodata) + *(.rodata*) + *(.gnu.linkonce.r*) . = ALIGN(0x4); *(.gcc_except_table) @@ -60,7 +71,8 @@ .data : { *(.shdata) - *(.data) + *(.data*) + *(.gnu.linkonce.d*) _edata = .; } > ram
------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |