On Friday 15 October 2004 5:27 am, Andi Kleen wrote:
On Fri, Oct 15, 2004 at 01:57:39PM +0200, ?rn Hansen wrote:
fredag 15 oktober 2004 06:32 skrev Scott Leighton:
So, my big question here is is the guy on the mplayer list right? Has SuSE messed up the location of the correct include files for the kernel?
I'm not a kernel hacker, of course ... but from what I've gathered so far, is that programs that require kernel headers should be acquiring those through /lib/modules/<kernel-version>/build/include ... but SuSE has botched that job, I usually have to fix that link when I build Nvidia driver.
That's intentional. The kernel includes need to be configured in the same way as the running kernel (or for all kernels if you want to distribute a module in binary form), and that needs some manual steps. For simple kernel modules it sometimes doesn't make a difference, but you will run into problems with more complex ones.
See /usr/src/linux/README.SUSE for details.
-Andi
OK, you both have confused me even more than I was already confused <g>. First point, the README Andi references states the following: "In the installed system, the kernel-source package installs files in the following directories: * /usr/src/linux-$VERSION-$RELEASE/ The kernel sources. * /usr/src/linux A symbolic link to /usr/src/linux-$VERSION-$RELEASE. " So, why is it that /usr/src/linux on my box is not a symbolic link, it's a real directory that contains a bunch of header files dated March 2004. Second point, and keep in mind that I am basically clueless here, the original question had to do with compiling MPlayer from source since a pre-built binary RPM for 64 bit doesn't seem to be available. So, the problem resolves around compiling an application so it can be installed and run. Has nothing to do with compiling kernels or kernel modules, just an application. When I try to compile the MPlayer package using the /usr/src/linux setup that SuSE put on my machine, it fails with the Compile Error `CONFIG_X86_L1_CACHE_SHIFT' error _unless_ I include a configuration switch to exclude framebuffer support, e.g., --disable-fbdev. Changing that /usr/src/linux directory to a symbolic link to /usr/src/linux/include/linux (which is also a real directory with a bunch of header files with various dates, some as recent as Aug 25th) results in a compile that is error free without using the --disable-fbdev setting. So, what does this have to do with /lib/module/.....? I'm totally confused and I don't think my question has been answered as to whether or not there's a problem with two sets of header files and no symbolic link. Sorry for being dense, but I'm just not getting it.... Scott -- POPFile, the OpenSource EMail Classifier http://popfile.sourceforge.net/ Linux 2.6.5-7.108-default x86_64