ppc64 gcc-3.4.2 lk-2.6.10-rc1-mm4 link errors
Alan Modra
amodra at bigpond.net.au
Wed Nov 10 16:47:39 EST 2004
On Tue, Nov 09, 2004 at 11:27:00PM -0600, Doug Maxey wrote:
> gcc -Wp,-MD,arch/ppc64/boot/.crt0.o.d -D__ASSEMBLY__ -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -Iinclude -Iinclude2 -I/build/dwm/linux/lk-2.6.10-rc1-mm4.edit/include -fno-builtin -traditional -c -o arch/ppc64/boot/crt0.o /build/dwm/linux/lk-2.6.10-rc1-mm4.edit/arch/ppc64/boot/crt0.S
OK, you used plain unadorned gcc to compile crt0.S, without -m64 or
-m32. That ought to produce ppc32 code.
> ld -Ttext 0x00400000 -e _start -T /build/dwm/linux/lk-2.6.10-rc1-mm4.edit/arch/ppc64/boot/zImage.lds -o arch/ppc64/boot/zImage arch/ppc64/boot/crt0.o arch/ppc64/boot/string.o arch/ppc64/boot/prom.o arch/ppc64/boot/main.o arch/ppc64/boot/zlib.o arch/ppc64/boot/imagesize.o arch/ppc64/boot/div64.o arch/ppc64/boot/kernel-vmlinux.strip.o && arch/ppc64/boot/addnote arch/ppc64/boot/zImage
And here you used plain unadorned ld too, which ought to be producing
ppc32 output from ppc32 input, and indeed the powerpc:common output
selection says you have the right ld.
> ld: warning: powerpc:common64 architecture of input file `arch/ppc64/boot/crt0.o' is incompatible with powerpc:common output
But this says your gcc produces ppc64 code by default..
--
Alan Modra
IBM OzLabs - Linux Technology Centre
More information about the Linuxppc64-dev
mailing list