Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 Jun 2013 21:57:28 +0200
From:      Dimitry Andric <dim@FreeBSD.org>
To:        Willem Jan Withagen <wjw@digiware.nl>
Cc:        "stable@freebsd.org" <stable@freebsd.org>
Subject:   Re: Error in make buildkernel `
Message-ID:  <EDDAA1E5-87E4-446F-8672-E62F98425634@FreeBSD.org>
In-Reply-To: <D24E19DB-1480-45F5-9F26-31AD144CE7A0@digiware.nl>
References:  <51B5C0EB.6050803@digiware.nl> <00EA9317-6691-467C-8366-3D7E4D808D6B@FreeBSD.org> <D24E19DB-1480-45F5-9F26-31AD144CE7A0@digiware.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Jun 10, 2013, at 20:39, Willem Jan Withagen <wjw@digiware.nl> wrote:
> Op 10 jun. 2013 om 19:27 heeft Dimitry Andric <dim@FreeBSD.org> het =
volgende geschreven:
>> On Jun 10, 2013, at 14:04, Willem Jan Withagen <wjw@digiware.nl> =
wrote:
>>> I'm trying to build a stable kernle on a freshly build 8.4-Stable =
i386
>>> system.
>>>=20
>>> And I get:
>>> MAKE=3Dmake sh /usr/srcs/src9/src/sys/conf/newvers.sh GENERIC
>>> /usr/local/bin/svnversion
>>> cc -c -O -pipe  -std=3Dc99 -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=3D8000 --param inline-unit-growth=3D100 --param
>>> large-function-growth=3D1000  -mno-align-long-strings
>>> -mpreferred-stack-boundary=3D2 -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
>>=20
>> You must run "make kernel-toolchain" first.  Alternatively, run "make
>> buildworld", but that is more work.
>=20
> 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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EDDAA1E5-87E4-446F-8672-E62F98425634>