Cannot build generic kernel
freebsd at edvax.de
Sat Jul 20 03:48:39 UTC 2019
On Fri, 19 Jul 2019 20:53:29 -0300, Eduardo Lemos de Sa wrote:
> On Thu, Jul 18, 2019 at 4:55 PM Thomas Mueller <mueller6722 at twc.com> wrote:
> > from David Azarewicz:
> > > I downloaded and installed FreeBSD-12.0-RELEASE-i386-memstick.img
> > > I checked out base/stable/12 r350009 using svnlite
> > > I followed the directions on
> > https://www.freebsd.org/doc/handbook/kernelconfig-building.html
> > > for building the kernel.
> > > I get an error:
> > > make: "/usr/src/sys/conf/kern.pre.mk" line 127: amd64/arm64/i386
> > kernel requires linker
> > > ifunc support
> > > both
> > > make buildkernel
> > > and
> > > make buildkernel KERNCONF=GENERIC
> > > fail exactly the same way.
> > > Today I updated to r350112 and the problem persists.
> > > So I have a fresh unmodified install of FreeBSD 12.0 RELEASE, I have a
> > fresh unmodified
> > > checkout of FreeBSD 12 stable, I followed the directions for building
> > the standard, default,
> > > generic kernel and it fails. I tried searching for a solution to this
> > problem and could not find a
> > > solution. How can I fix this problem?
> > Did you make buildworld before attempting buildkernel?
> > I read UPDATING in the top directory of the src tree, and you are supposed
> > to "make buildworld" before buildkernel.
> > That would put updated tools in place for buildkernel.
> > Tom
> No, I just
> make kernel-toolchain buildkernel
> make installkernel
> make buildworld
> make installworld
The step "make buildworld", being required for "make installworld",
seems to be missing...
> (sometimes, you need to do a mergemaster -Ui - as it is described on
I suggest you also have a look at /usr/src/Makefile's comment header
which contains a nice summary of the procedure you should follow.
# For individuals wanting to upgrade their sources (even if only a
# delta of a few days):
# 1. `cd /usr/src' (or to the directory containing your source tree).
# 2. `make buildworld'
# 3. `make buildkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC).
# 4. `make installkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC).
# [steps 3. & 4. can be combined by using the "kernel" target]
# 5. `reboot' (in single user mode: boot -s from the loader prompt).
# 6. `mergemaster -p'
# 7. `make installworld'
# 8. `make delete-old'
# 9. `mergemaster' (you may wish to use -i, along with -U or -F).
# 10. `reboot'
# 11. `make delete-old-libs' (in case no 3rd party program uses them anymore)
# See src/UPDATING `COMMON ITEMS' for more complete information.
Compare with the relevant handbook article:
Additionally see 22.214.171.124. Checking for Outdated Files and Libraries.
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
More information about the freebsd-questions