Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Jul 2018 10:04:05 -0500
From:      Kyle Evans <kevans@freebsd.org>
To:        Alan Somers <asomers@freebsd.org>
Cc:        Ian Lepore <ian@freebsd.org>, FreeBSD <freebsd-stable@freebsd.org>,  =?UTF-8?Q?Ulrich_Sp=C3=B6rlein?= <uqs@freebsd.org>
Subject:   Re: -STABLE can no longer build -CURRENT kernel, linker missing ifunc
Message-ID:  <CACNAnaGsg5W0REfLZ_VyqOjkzaGA0K1UKduAc8Ruo8u_ZLcB6g@mail.gmail.com>
In-Reply-To: <CAOtMX2gnV0sGfH4GghOTJbm1W-FZ%2B86fCDLKjh6Du13PJzE9SQ@mail.gmail.com>
References:  <CAJ9axoTbmTaq1OiHVvSdUW8GLg6yRktNQw9-Aasi3p38Yt7vcQ@mail.gmail.com> <1532530155.61594.0.camel@freebsd.org> <CAOtMX2gnV0sGfH4GghOTJbm1W-FZ%2B86fCDLKjh6Du13PJzE9SQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jul 25, 2018 at 9:52 AM, Alan Somers <asomers@freebsd.org> wrote:
> On Wed, Jul 25, 2018 at 8:49 AM, Ian Lepore <ian@freebsd.org> wrote:
>
>> On Wed, 2018-07-25 at 14:35 +0200, Ulrich Sp=C3=B6rlein wrote:
>> > Hey all, as of a couple of weeks ago, neither 11.2-RELEASE nor a
>> > recent
>> > 11-STABLE can buildkernel from head.
>> >
>> > This has stopped the Coverity Scan runs dead in its track and I
>> > wonder how
>> > anyone would boostrap a move from 11.x to 12.0 then.
>> >
>> > % env __MAKE_CONF=3D/dev/null make buildkernel
>> > make[1]: "/data/freebsd.work/Makefile.inc1" line 343:
>> > SYSTEM_COMPILER:
>> > libclang will be built for bootstrapping a cross-compiler.
>> > make[1]: "/data/freebsd.work/Makefile.inc1" line 348: SYSTEM_LINKER:
>> > libclang will be built for bootstrapping a cross-linker.
>> >
>> > --------------------------------------------------------------
>> > >
>> > > >
>> > > > >
>> > > > > Kernel build for GENERIC started on Wed Jul 25 14:34:46 CEST
>> > > > > 2018
>> > --------------------------------------------------------------
>> > =3D=3D=3D> GENERIC
>> > mkdir -p /usr/obj/data/freebsd.work/amd64.amd64/sys
>> >
>> > --------------------------------------------------------------
>> > >
>> > > >
>> > > > >
>> > > > > stage 1: configuring the kernel
>> > --------------------------------------------------------------
>> > cd /data/freebsd.work/sys/amd64/conf;  PATH=3D/usr/obj/data/
>> > freebsd.work/amd64.amd64/tmp/legacy/usr/sbin:/usr/obj/data/freebsd.wo
>> > rk/amd64.amd64/tmp/legacy/usr/bin:/usr/obj/data/freebsd.work/amd64.am
>> > d64/tmp/legacy/bin:/usr/obj/data/freebsd.work/amd64.amd64/tmp/usr/sbi
>> > n:/usr/obj/data/freebsd.work/amd64.amd64/tmp/usr/bin:/sbin:/bin:/usr/
>> > sbin:/usr/bin
>> > config  -d /usr/obj/data/freebsd.work/amd64.amd64/sys/GENERIC  -I
>> > '/data/
>> > freebsd.work/sys/amd64/conf'
>> > '/data/freebsd.work/sys/amd64/conf/GENERIC'
>> > Kernel build directory is
>> > /usr/obj/data/freebsd.work/amd64.amd64/sys/GENERIC
>> > Don't forget to do ``make cleandepend && make depend''
>> >
>> > --------------------------------------------------------------
>> > >
>> > > >
>> > > > >
>> > > > > stage 2.1: cleaning up the object tree
>> > --------------------------------------------------------------
>> > cd /usr/obj/data/freebsd.work/amd64.amd64/sys/GENERIC;
>> > MACHINE_ARCH=3Damd64
>> > MACHINE=3Damd64 CPUTYPE=3D CC=3D"cc -target x86_64-unknown-freebsd12.0
>> > --sysroot=3D/usr/obj/data/freebsd.work/amd64.amd64/tmp -B/usr/obj/data=
/
>> > freebsd.work/amd64.amd64/tmp/usr/bin" CXX=3D"c++  -target
>> > x86_64-unknown-freebsd12.0 --sysroot=3D/usr/obj/data/
>> > freebsd.work/amd64.amd64/tmp -B/usr/obj/data/
>> > freebsd.work/amd64.amd64/tmp/usr/bin" CPP=3D"cpp -target
>> > x86_64-unknown-freebsd12.0 --sysroot=3D/usr/obj/data/
>> > freebsd.work/amd64.amd64/tmp -B/usr/obj/data/
>> > freebsd.work/amd64.amd64/tmp/usr/bin" AS=3D"as" AR=3D"ar" LD=3D"ld"
>> > LLVM_LINK=3D""
>> > NM=3Dnm OBJCOPY=3D"objcopy" RANLIB=3Dranlib STRINGS=3D SIZE=3D"size"
>> > INSTALL=3D"sh
>> > /data/freebsd.work/tools/install.sh" PATH=3D/usr/obj/data/
>> > freebsd.work/amd64.amd64/tmp/legacy/usr/sbin:/usr/obj/data/freebsd.wo
>> > rk/amd64.amd64/tmp/legacy/usr/bin:/usr/obj/data/freebsd.work/amd64.am
>> > d64/tmp/legacy/bin:/usr/obj/data/freebsd.work/amd64.amd64/tmp/usr/sbi
>> > n:/usr/obj/data/freebsd.work/amd64.amd64/tmp/usr/bin:/sbin:/bin:/usr/
>> > sbin:/usr/bin
>> > make  -m /data/freebsd.work/share/mk  KERNEL=3Dkernel cleandir
>> > make[2]: "/data/freebsd.work/sys/conf/kern.pre.mk" line 125: amd64
>> > kernel
>> > requires linker ifunc support
>> > *** Error code 1
>> >
>> > Stop.
>> > make[1]: stopped in /data/freebsd.work
>> > *** Error code 1
>> >
>> > Stop.
>> > make: stopped in /data/freebsd.work
>> > _______________________________________________
>>
>> I think you may need to do "make kernel-toolchain" first.
>>
>> -- Ian
>>
>
> Would "make kernel-toolchain" also fix the "config(8) may be too old"
> errors that I get whenever I try "make universe" on universe12a.freebsd.o=
rg,
> which is a few months old?
>

Hi,

kernel-toolchain should fix most config(8) problems, but we have a
separate problem with universe invoking host config(8) [1] -- I have a
tentative patch for that that needs review, but the problem should've
gone away when I backed out the config(8) major bump in r336414 on
July 17th.

Thanks,

Kyle Evans

[1] https://svnweb.freebsd.org/base/head/Makefile?view=3Dmarkup#l694



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACNAnaGsg5W0REfLZ_VyqOjkzaGA0K1UKduAc8Ruo8u_ZLcB6g>