Messages in this thread | ![/](/images/icornerl.gif) | | Date | Fri, 7 Aug 2009 21:00:01 +0100 | From | Russell King - ARM Linux <> | Subject | Re: [PATCH 4/6] Add support for LZO-compressed kernels for ARM |
| |
On Fri, Aug 07, 2009 at 03:55:24PM +0200, Albin Tonnerre wrote: > That's true for the actual kernel image, but not for the bootstrap code we use > when compiling compressed kernels. arch/arm/boot/compressed/Makefile uses > libgcc, unless I'm overlooking something here: > > arm-unknown-linux-uclibcgnueabi-ld -EL --defsym zreladdr=0x20008000 > --defsym initrd_phys=0x20410000 --defsym params_phys=0x20000100 -p > --no-undefined -X > /home/albin/x-tools/arm-unknown-linux-uclibcgnueabi/lib/gcc/arm-unknown-linux-uclibcgnueabi/4.3.2/libgcc.a > -T arch/arm/boot/compressed/vmlinux.lds arch/arm/boot/compressed/head.o > arch/arm/boot/compressed/piggy.gzip.o arch/arm/boot/compressed/misc.o -o > arch/arm/boot/compressed/vmlinux
It's because libgcc appears in the wrong place in the command line, and due to the way kbuild works, we can't get it into the right place easily.
Linkers are sensitive to the order of archives on the command line - its pointless having an archive as the first file argument because none of the contained objects will ever be pulled in.
Sam - any ideas how to solve this?
| ![\](/images/icornerr.gif) |