On Sat, Jul 28, 2007 at 08:05:08PM +0300, Meelis Roos wrote: > Retested this compile error with todays 2.6.23-rc1+git, still the same. > > > > LD arch/alpha/boot/bootloader > > > arch/alpha/boot/bootloader.lds:25: undefined symbol `srm_printk' > > > referenced in expression > > > > I was unable to repeoduce these errors on 2.6.22-rc4 with your config. > > Hmm. Just make works, make bootimage does not. I debugged this further > today and I can not see how it can work. > > The link command in question is > ld -static -uvsprintf -T arch/alpha/boot/bootloader.lds > arch/alpha/boot/head.o arch/alpha/boot/main.o -o arch/alpha/boot/bootloader > and it still tells > arch/alpha/boot/bootloader.lds:25: undefined symbol `srm_printk' referenced > in expression > > arch/alpha/boot/bootloader.lds contains a single related line referring > to srm_printk: > printk = srm_printk; > This only seems to define an alias to srm_printk so not important (and > unused)?
Hi Meelis. I took the time to investige this a bit. The relevant files in this case (arch/alpha/MAkefile + boot/Makefile has not seen many changes when browsing the git tree. So I looked back a bit further in the bitkeeper based tree. Before boot/Makefile were converted to kbuild style bootloader indeed referenced $(LIBS). That was lost in the process. So adding $(LIBS_Y) is the right thing to do. The linker error you get is due to kasprintf uses kmalloc and it gets pulled in when srm_printf uses vsprintf. The fix is to split kasprintf out to a separate file to avoid pulling in more stuff than necessary. PS. I had trouble compiling objstrip and had to due a lot of ugly hacks before it compiles. I assume it is a toolchain issue.. Sam - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/