How does one install kernel sources and base

Michal Varga varga.michal at gmail.com
Tue Sep 20 01:10:10 UTC 2011


On Mon, 2011-09-19 at 19:22 -0500, Antonio Olivares wrote:
> Michal,
> 
> Thank you very much for your detailed instruction.  I was able to get
> all of the sources and built nvidia driver successfully :)
> 
> However, when I run kldload nvidia, I get a mismatch with the running
> kernel and an incompatible ?????.  I cannot post exact error as the
> machine gives me no X :(, I checked to see if enabling hald and dbus
> at /etc/rc.conf would make a difference and they have not :(, I have
> also tried nouveau and it also does not work.  No working X on FreeBSD
> 9.0 BETA 2 amd64, ports updated to latest, xorg, xorg-server, xfce4,
> ... I will post in the thread I created on this issue.
> 
> Regards,
> 
> Antonio

Some details about the "incompatible ?????" error would be quite useful
as without an actual (and exact) error message it's only guessing...

But it is possible that your downloaded (latest -HEAD) sources are no
longer compatible with your currently running OS, though there being
like about a week difference, I find it somewhat unlikely (but always
possible).

If that's the case, you have two possible routes to take:

You can either bring your system up to date corresponding to the latest
sources; that is, rebuilding and installing new FreeBSD kernel and
world. That should get rid of any incompatibilities you currently
experience. It's a pretty straightforward process which in your case
amounts to just about -

# cd /usr/src
# make buildworld installworld kernel

- but note that the above mentioned IS NOT an officially supported
procedure and you are first REQUIRED to read FreeBSD Handbook and
understand the basics of building and updating FreeBSD. I just mention
it to illustrate how simple the procedure generally is. But again, don't
run it blindly. When unsure, always use the officially supported, while
somewhat lenghtier, procedure described in FreeBSD Handbook.

Now the other possible route that doesn't involve building and updating
FreeBSD at all, is to download the sources that closely match your
currently running system.

As far as I know (and I wasn't able to find), there is no CVS tag for
BETA2, so you can't pull the exact sources that way, but you should be
able to get very close with:

$ uname -a

- and notice when the kernel was built, which was hopefully very close
to the time when the sources were pulled from CVS (this is more or less
only a guess, so someone involved in release engineering might be of
more help with this issue, if there even is any).

To do this, you just need to edit your supfile and include the specific
date from when to pull the sources:

That is, replacing the line:

*default release=cvs tag=.

With:

*default release=cvs tag=. date=2011.09.??.??.??.??

(Just fill in the missing dd, hh, mm, ss values based on the date you
already know from uname.)

This modified supfile will let you pull sources that should be a very
close - if not perfect - match to your current system. You can then
rebuild your drivers (i.e. that non-working nvidia module) the regular
way. By my humble estimate, that should be enough to fix your issue.

m.


-- 
Michal Varga,
Stonehenge (Gmail account)




More information about the freebsd-current mailing list