Date: Thu, 31 May 2018 07:14:05 -0700 (PDT) From: "Rodney W. Grimes" <freebsd-rwg@pdx.rh.CN85.dnsmgr.net> To: gljennjohn@gmail.com Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: ``make buildkernel'' fails when /usr/obj is empty Message-ID: <201805311414.w4VEE57n076965@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <20180531095222.399e7a37@ernst.home>
next in thread | previous in thread | raw e-mail | index | archive | help
> There's something totally screwy about trying to build a kernel when > /usr/obj is not populated. > > I ran ``make clean'' in /usr/src and then ``make buildkernel''. This > fails with > make[2]: "/usr/src/sys/conf/kern.pre.mk" line 125: amd64 kernel > requires linker ifunc support > > This is total BS because > > /usr/bin/ld --version > LLD 6.0.0 (FreeBSD 326565-1200002) (compatible with GNU linkers) > > which is exactly what bsd.linker.mk is looking for to set ifunc. > > If I do this: > > mkdir -p /usr/obj/usr/src/amd64.amd64/tmp/legacy/usr/bin > cp /usr/bin/ld /usr/obj/usr/src/amd64.amd64/tmp/legacy/usr/bin > > the buildkernel then succeeds. > > Considering that (reformatted output from make) > > PATH=/usr/obj/usr/src/amd64.amd64/tmp/legacy/usr/sbin: > /usr/obj/usr/src/amd64.amd64/tmp/legacy/usr/bin: > /usr/obj/usr/src/amd64.amd64/tmp/legacy/bin: > /usr/obj/usr/src/amd64.amd64/tmp/usr/sbin: > /usr/obj/usr/src/amd64.amd64/tmp/usr/bin: > /sbin:/bin:/usr/sbin:/usr/bin > > it seems like /usr/bin/ld should be found by bsd.linker.mk and no > error should be reported. AHH!! That explains why I was still seeing this too! I been forcing the LD= work around and just ignoring this failure thinking it was something in my not so normal setup, but infact I always start with an empty /usr/obj due to a zfs rollback pool/usr/obj@empty So this is a "confirmed" this occurs, including in a 20180521 freshly installed snapshot. -- Rod Grimes rgrimes@freebsd.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201805311414.w4VEE57n076965>