Error in make buildkernel `

Dimitry Andric dim at FreeBSD.org
Mon Jun 10 19:57:33 UTC 2013


On Jun 10, 2013, at 20:39, Willem Jan Withagen <wjw at digiware.nl> wrote:
> Op 10 jun. 2013 om 19:27 heeft Dimitry Andric <dim at FreeBSD.org> het volgende geschreven:
>> On Jun 10, 2013, at 14:04, Willem Jan Withagen <wjw at digiware.nl> wrote:
>>> I'm trying to build a stable kernle on a freshly build 8.4-Stable i386
>>> system.
>>> 
>>> And I get:
>>> MAKE=make sh /usr/srcs/src9/src/sys/conf/newvers.sh GENERIC
>>> /usr/local/bin/svnversion
>>> cc -c -O -pipe  -std=c99 -g -Wall -Wredundant-decls -Wnested-externs
>>> -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline
>>> -Wcast-qual  -Wundef -Wno-pointer-sign -fformat-extensions
>>> -Wmissing-include-dirs -fdiagnostics-show-option   -nostdinc  -I.
>>> -I/usr/srcs/src9/src/sys -I/usr/srcs/src9/src/sys/contrib/altq -D_KERNEL
>>> -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common
>>> -finline-limit=8000 --param inline-unit-growth=100 --param
>>> large-function-growth=1000  -mno-align-long-strings
>>> -mpreferred-stack-boundary=2 -mno-mmx -mno-sse -msoft-float
>>> -ffreestanding -fstack-protector -Werror  vers.c
>>> ctfconvert -L VERSION -g vers.o
>>> linking kernel.debug
>>> ld:/usr/srcs/src9/src/sys/conf/ldscript.i386:66: syntax error
>>> *** Error code 1
>> 
>> You must run "make kernel-toolchain" first.  Alternatively, run "make
>> buildworld", but that is more work.
> 
> I usually run buildworld from  crontab first, and then builkernel.
> But things might have gone wrong.

To explain this a bit more: FreeBSD 9.x and later have binutils 2.17.50,
FreeBSD 8.x has binutils 2.15.  The kernels for 9.x and later use a bit
of linker script syntax that is not understood by the older ld in 8.x,
so you cannot link the 9.x kernel with /usr/bin/ld on 8.x.

Therefore, you have to build the newer linker as part of buildworld, or
by using the kernel-toolchain target.

-Dimitry



More information about the freebsd-stable mailing list