Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Mar 2019 11:34:26 -0400
From:      Ed Maste <emaste@freebsd.org>
To:        Dan Allen <danallen46@gmail.com>
Cc:        "freebsd-stable@freebsd.org Mailing FreeBSD-STABLE" <freebsd-stable@freebsd.org>
Subject:   Re: ifuncs check flawed?
Message-ID:  <CAPyFy2Dwxz2rgUbsVWhLOYeBZyGQQo6mc88sZ0mLdzw95m_nBQ@mail.gmail.com>
In-Reply-To: <35A0AE5B-B25D-4067-86E3-325E65F3C1F4@gmail.com>
References:  <35A0AE5B-B25D-4067-86E3-325E65F3C1F4@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 18 Mar 2019 at 13:03, Dan Allen <danallen46@gmail.com> wrote:
>
> The buildworld and buildkernel steps both immediately fail due to the linker not supporting ifuncs.

By default FreeBSD/i386 uses lld as the bootstrap linker (i.e., the
linker used for building the kernel, libraries, and userland binaries)
but still installs GNU ld as /usr/bin/ld on stable/12 due to issues in
the ports tree.

There are a few different ways you could address this:
1. Build either the buildworld or kernel-toolchain targets before make
buildkernel, which will then use the built toolchain including lld.
2. Set LD=ld.lld to explicitly use lld for the kernel link.
3. Build and install world WITH_LLD_IS_LD in src.conf, so that
/usr/bin/ld is lld.



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