[Aboriginal] Build error when system has a cross compiler already
koorogi at koorogi.info
Sun Jan 5 00:22:27 PST 2014
I'm running into a build error with aboriginal that seems to be related
to the fact that I already have an SH4 cross-compiler toolchain
installed on my system.
First, the error itself. When aboriginal tries to compile the kernel:
sh4-ld: unrecognized option '--build-id'
Digging around in the kernel makefiles a bit, it looks like it does try
checking if the linker supports the --build-id flag. Looks like the
check amounts roughly to:
build/simple-cross-compiler-sh4/bin/sh4-gcc -Wl,--build-id -nostdlib -x c /dev/null -o /tmp/foo
Which on my system produces this output:
/usr/libexec/gcc/sh-superh-linux/ld: warning: cannot find entry symbol _start; defaulting to 00000000004000d8
Note the path to ld -- the sh4-gcc built by aboriginal is apparently
running the SH4 linker I have installed on my system, which is from
binutils 2.24, which supports the --build-id option. That explains why
the kernel thinks the linker supports it. But then the kernel build
actually uses the sh4-ld built by aboriginal to link, and this is from
an older version of binutils and doesn't support --build-id.
Indeed, uninstalling the SH4 toolchain on my system fixes the aboriginal
build. I don't have the first clue how gcc decides what linker to run,
but I'm hoping someone here has some insight how to fix this, short of
uninstalling my toolchain.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 836 bytes
Desc: Digital signature
More information about the Aboriginal