Re: problem compiling kernel ld error relocation truncated to fit: GPREL16 against symbol
On Wed, Nov 2, 2011 at 10:54 PM, carl hansen <carlhansen1234@gmail.com> wrote:
> Problem compiling kernel 3.1, gcc 4.6.1 or .2, latest binutils
>
> I think it's ld error
> google suggested -Wl,--no-relax, didn't make a difference, unless I
> did it wrong
>
>
> ld -static -N --build-id -o .tmp_vmlinux1 -T
> arch/alpha/kernel/vmlinux.lds arch/alpha/kernel/head.o
> init/built-in.o --start-group usr/built-in.o
> arch/alpha/kernel/built-in.o arch/alpha/mm/built-in.o
> arch/alpha/math-emu/built-in.o kernel/built-in.o mm/built-in.o
> fs/built-in.o ipc/built-in.o security/built-in.o crypto/built-in.o
> block/built-in.o lib/lib.a arch/alpha/lib/lib.a lib/built-in.o
> arch/alpha/lib/built-in.o drivers/built-in.o sound/built-in.o
> firmware/built-in.o net/built-in.o --end-group
> init/built-in.o: In function `do_one_initcall':
> /var/src.build/kernelbuild/latest/linux-3.1/init/main.c:682:(.text+0x8):
> relocation truncated to fit: GPREL16 against symbol `initcall_debug'
> defined in .sbss section in init/built-in.o
> /var/src.build/kernelbuild/latest/linux-3.1/init/main.c:689:(.text+0xf8):
> relocation truncated to fit: GPREL16 against symbol `initcall_debug'
> defined in .sbss section in init/built-in.o
> init/built-in.o: In function `set_reset_devices':
> /var/src.build/kernelbuild/latest/linux-3.1/init/main.c:146:(.init.text+0x10):
> relocation truncated to fit: GPREL16 against symbol `reset_devices'
> defined in .sbss section in init/built-in.o
> init/built-in.o: In function `init_setup':
> /var/src.build/kernelbuild/latest/linux-3.1/init/main.c:293:(.init.text+0x5c):
> relocation truncated to fit: GPREL16 against `.sbss'
Yes, I hit this just two days ago. Using LDFLAGS="--relax" allows the
compilation to finish, but it produced a kernel that panicked on boot.
Not sure if it's related to binutils bug
http://sources.redhat.com/bugzilla/show_bug.cgi?id=5276 or if its a
gcc bug. Compiling with the same binutils and gcc-4.5.3 produced a
working kernel though.
Matt
Reply to: