Cannot build generic kernel
Polytropon
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:
> Dear
>
> 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[2]: "/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
>
> reboot
>
> 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
> handbook)
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:
https://www.freebsd.org/doc/handbook/makeworld.html
Additionally see 23.5.6.2. Checking for Outdated Files and Libraries.
--
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
More information about the freebsd-questions
mailing list