Can't build kernel anymore: amd64 kernel requires linker ifunc support

Rodney W. Grimes freebsd-rwg at pdx.rh.CN85.dnsmgr.net
Wed May 16 14:04:35 UTC 2018


> On Wed, May 16, 2018 at 3:49 AM, Hans Petter Selasky <hps at selasky.org>
> wrote:
> 
> > On 05/16/18 11:42, Emeric POUPON wrote:
> >
> >>
> >> Thanks for your help.
> >>>>
> >>>> Actually, I already did all the steps described here:
> >>>> https://www.freebsd.org/doc/handbook/makeworld.html with success.
> >>>> After step 10, I now get this error.
> >>>> I tried to put WITHOUT_LLD_BOOTSTRAP=yes in /etc/src.conf + rebuild
> >>>> everything with no luck.
> >>>>
> >>>>
> >>>> Please remove this line from your src.conf, lld is required for building
> >>> kernel since the ifunc support.
> >>>
> >>>
> >> I already did all the steps of the handbook without this line, and I
> >> finally had the issue I described.
> >> What I told is that adding this line + make buildworld does not solve the
> >> kernel building issue.
> >>
> >
> > Try adding:
> >
> > -m $PWD/share/mk
> >
> > After make.
> >
> > Not sure if it helps.
> 
> 
> LD=ld.lld make
> 
> is the magic here. The kernel needs a new linker to properly link in the
> ifunc, and that's not our ancient ld. lld does it, as does the latter-day
> binutils.

Since this now seems to be a mandatory thing to get a kernel built
can it please be set in the Makefile that is needing it?



-- 
Rod Grimes                                                 rgrimes at freebsd.org


More information about the freebsd-arch mailing list