Time consuming seems like an understatement!
make buildworld
took several hours and then
make buildkernel KERNCONF=GENERIC
has been running for several more hours and has displaying
Code:
ctfmerge -L VERSION -g -o kernel.full
for maybe three hours.
It is time consuming but it can also be extremely rewarding because this process allows you to fine tune and control just about
everything on your base system. Be sure to check out
src.conf(5) if you're interested in this (which I guess you're not, but figured I'd mention it). I'm not only talking about optimizing your system (a little bit) but also getting rid of overhead. For example, I don't have a floppy disk in my laptop so I use
WITHOUT_FLOPPY= in
/etc/src.conf to ensure that floppy support is not included. I've always been a little purist (I suppose) so I've been using
WITHOUT_INFO almost as long as I've been using FreeBSD to get rid of that (in my opinion) ridiculous tex info system (I never saw the added value). This option has now become obsolete because it's the default on
11.0.
Now, this is obviously totally not interesting for you, but because I keep my system up to date using the source tree I even made sure to remove stuff such as firewalls which I don't need, no PKG bootstrapping, no SVN lite, etc. It's in my opinion ideal on smaller systems as well as on server which you'd like to keep customized.
I tried checking out that website you mentioned but all I got were errors. Why not use the official documentation?
Chapter 23.6 of the handbook explains most of this (be sure to follow the links though) but in a nutshell:
- Be sure to wipe out /usr/obj and /usr/src before starting.
- Does not apply to you because
#make buildworld
already completed, but I'm trying to cover all grounds here.
- Get the source code. I advice using a SVN mirror but in general this also works:
# svn co https://svn.freebsd.org/base/releng/11.0 /usr/src
.
- Just to clarify: I'm from the Netherlands so I use the European mirror myself:
#svn co https://svn0.eu.freebsd.org/base/releng/11.0 /usr/src
.
- Optional, but suggested: go into the source tree (
cd /usr/src
) and check the new src.conf manual page if you plan on customizing your base system: man -M ./share/man src.conf
.
- Based on this you can add options to /etc/src.conf if applicable.
- Does not apply to you because you're upgrading from the same version (and I think you're not looking to keep on using the source ).
- Now check all the steps you need to perform:
less Makefile
, it will show you exactly what's needed.
So just to be complete here (from
/usr/src/Makefile):
Code:
# 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. `mergemaster' (you may wish to use -i, along with -U or -F).
# 9. `make delete-old'
# 10. `reboot'
# 11. `make delete-old-libs' (in case no 3rd party program uses them anymore)
As you can see: default target is
GENERIC so don't bother with specifying that if you're using it. Typing is effort afterall
You probably done most of this already, but I figured I'd write up a complete set of instructions which you could use.
Building the kernel can take it's time. I never bothered to look at the output that much, but just as comparison: building the kernel on my (very old) P4 Toshiba laptop takes about 5 - 6 hours. The line you mentioned (CTF) can definitely be a time consuming process.
You could always use
ps from another console to check if everything is still running.
Hope this can help a bit.