Ian Lepore
2018-Jul-25 14:49 UTC
-STABLE can no longer build -CURRENT kernel, linker missing ifunc
On Wed, 2018-07-25 at 14:35 +0200, Ulrich Sp?rlein 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=/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 > -------------------------------------------------------------- > ===> GENERIC > mkdir -p /usr/obj/data/freebsd.work/amd64.amd64/sys > > -------------------------------------------------------------- > > > > > > > > > > > > > stage 1: configuring the kernel > -------------------------------------------------------------- > cd /data/freebsd.work/sys/amd64/conf;??PATH=/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=amd64 > MACHINE=amd64 CPUTYPE= CC="cc -target x86_64-unknown-freebsd12.0 > --sysroot=/usr/obj/data/freebsd.work/amd64.amd64/tmp -B/usr/obj/data/ > freebsd.work/amd64.amd64/tmp/usr/bin" CXX="c++??-target > x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/data/ > freebsd.work/amd64.amd64/tmp -B/usr/obj/data/ > freebsd.work/amd64.amd64/tmp/usr/bin" CPP="cpp -target > x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/data/ > freebsd.work/amd64.amd64/tmp -B/usr/obj/data/ > freebsd.work/amd64.amd64/tmp/usr/bin" AS="as" AR="ar" LD="ld" > LLVM_LINK="" > NM=nm OBJCOPY="objcopy" RANLIB=ranlib STRINGS= SIZE="size" > INSTALL="sh > /data/freebsd.work/tools/install.sh" PATH=/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=kernel 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
Alan Somers
2018-Jul-25 14:52 UTC
-STABLE can no longer build -CURRENT kernel, linker missing ifunc
On Wed, Jul 25, 2018 at 8:49 AM, Ian Lepore <ian at freebsd.org> wrote:> On Wed, 2018-07-25 at 14:35 +0200, Ulrich Sp?rlein 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=/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 > > -------------------------------------------------------------- > > ===> GENERIC > > mkdir -p /usr/obj/data/freebsd.work/amd64.amd64/sys > > > > -------------------------------------------------------------- > > > > > > > > > > > > > > > > > stage 1: configuring the kernel > > -------------------------------------------------------------- > > cd /data/freebsd.work/sys/amd64/conf; PATH=/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=amd64 > > MACHINE=amd64 CPUTYPE= CC="cc -target x86_64-unknown-freebsd12.0 > > --sysroot=/usr/obj/data/freebsd.work/amd64.amd64/tmp -B/usr/obj/data/ > > freebsd.work/amd64.amd64/tmp/usr/bin" CXX="c++ -target > > x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/data/ > > freebsd.work/amd64.amd64/tmp -B/usr/obj/data/ > > freebsd.work/amd64.amd64/tmp/usr/bin" CPP="cpp -target > > x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/data/ > > freebsd.work/amd64.amd64/tmp -B/usr/obj/data/ > > freebsd.work/amd64.amd64/tmp/usr/bin" AS="as" AR="ar" LD="ld" > > LLVM_LINK="" > > NM=nm OBJCOPY="objcopy" RANLIB=ranlib STRINGS= SIZE="size" > > INSTALL="sh > > /data/freebsd.work/tools/install.sh" PATH=/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=kernel 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.org, which is a few months old?