** Reply to message from Michael Fratoni <[EMAIL PROTECTED]> on Wed, 26 Mar 2003 
23:08:22 -0500

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On Wednesday 26 March 2003 04:14 pm, Robert P. J. Day wrote:
> >   in a fit of poor judgment, i tried to test the new 2.5.66 kernel
> > on my RH 8.0 box, and not only did it explode in glorious ways,
> > it made a mess of my nvidia setup.
> >
> >   in recovering to an older, working kernel, i now find i can't
> > rebuild the NVIDIA kernel src rpms (loads of parse errors from
> > /usr/include files).
> >
> >   i'm not sure why i'm getting compile-time errors when i've
> > never had them before, but i accidentally removed the kernel
> > source directory for the current good kernel, which means that
> > the sym link "/lib/modules/???/build" is now pointing at a
> > non-existent kernel source directory under /usr/src (yes, i
> > was eventually going to get around to that).
> >
> >   so, before i spend a lot of time on this, what is the function
> > of that symlink, and could having it point at a non-existent
> > kernel source directory be causing the rebuild of my NVIDIA
> > kernel src rpm to blow up with dozens of parse errors from
> > include files?
> 
> (most?) Modules that require the headers for the running kernel point to 
> /lib/modules/`uname -r`/build. I don't have Nvidia's drivers installed but 
> I've seen others that do something like:
> 
> LINUX=/lib/modules/`uname -r`/build
> CFLAGS=-DMODULE -D__KERNEL__ -DDBG=0 -Wall -Wstrict-prototypes -O6 
> - -I$(LINUX)/include
> 
> >   (not having the kernel source directory for the current running
> > kernel doesn't affect anything else -- system runs fine otherwise.)
> 
> But building kernel modules will fail, as modules require the headers from 
> the kernel tree, not the headers installed in /usr/include/linux/, (which 
> are the headers glibc was compiled with, and are provided by the 
> glibc-kernheaders package). Any kernel module that tries to include 
> system headers should generate warning messages similar to:
> #warning Using kernel header in userland!
> #warning Using kernel headers in userspace.
> 
> In the case above, if /lib/modules/`uname -r`/build is a broken link, the 
> build will fail with the above warnings followed by many parse errors.
> 
> So, the short version is reinstall the kernel-source package if you want 
> to build kernel modules.

And most drivers will not be able to build until you do a "make oldconfig" and "make 
dep" in the kernel source tree.

jb



-- 
redhat-list mailing list
unsubscribe mailto:[EMAIL PROTECTED]
https://listman.redhat.com/mailman/listinfo/redhat-list

Reply via email to