Re: [PATCH 4/6] Add support for LZO-compressed kernels for ARM

Albin Tonnerre
2009-08-11T14:17:36Z

On Tue, Aug 11, 2009 at 03:39:43PM +0200, Sam Ravnborg wrote :
> On Tue, Aug 11, 2009 at 11:44:18AM +0200, Albin Tonnerre wrote:
> > Hi Sam,
> >
> > On Fri, Aug 07, 2009 at 11:08:16PM +0200, Sam Ravnborg wrote :
> > > We could add libgcc as a prerequisite.
> > > Untested patch below.
> >
> > When compiling with this patch applied, I get the following error:
> >
> > Kernel: arch/arm/boot/Image is ready
> > LD arch/arm/boot/compressed/vmlinux
> > /home/albin/x-tools/arm-unknown-linux-uclibcgnueabi/lib/gcc/arm-unknown-linux-uclibcgnueabi/4.3.2/libgcc.a(_dvmd_lnx.o):
> > In function `__div0':
> > /home/albin/devel/free-electrons/toolchain/targets/src/gcc-4.3.2/libgcc/../gcc/config/arm/lib1funcs.asm:1079:
> > undefined reference to `raise'
> > make[2]: *** [arch/arm/boot/compressed/vmlinux] Error 1
> > make[1]: *** [arch/arm/boot/compressed/vmlinux] Error 2
> >
> > I've got no idea where this symbol is defined, though. Has anyone an idea on
> > this ?
>
> To make sure thet hack did what it was intended could you
> try to build with V=1 and post output of the ld command.
>

Here it is:

make -f scripts/Makefile.build obj=arch/arm/boot/compressed
arch/arm/boot/compressed/vmlinux
arm-unknown-linux-uclibcgnueabi-ld -EL --defsym zreladdr=0x20008000
--defsym initrd_phys=0x20410000 --defsym params_phys=0x20000100 -p
--no-undefined -X -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
/home/albin/x-tools/arm-unknown-linux-uclibcgnueabi/lib/gcc/arm-unknown-linux-uclibcgnueabi/4.3.2/libgcc.a -o arch/arm/boot/compressed/vmlinux
/home/albin/x-tools/arm-unknown-linux-uclibcgnueabi/lib/gcc/arm-unknown-linux-uclibcgnueabi/4.3.2/libgcc.a(_dvmd_lnx.o):
In function `__div0':
/home/albin/devel/free-electrons/toolchain/targets/src/gcc-4.3.2/libgcc/../gcc/config/arm/lib1funcs.asm:1079:
undefined reference to `raise'

So it seems like the hack indeed did what is was supposed to do.

Regards,
--
Albin Tonnerre, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.