SlackwareThis Forum is for the discussion of Slackware Linux.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
The kernel-headers package is there primarily to ensure that /usr/include/linux/* exists, regardless of what current kernel is installed (be it from Slackware's, or from the local sysadmin.) It is not necessary in a running system (hence out of the A fileset,) but essential if you're building anything Linux specific (hence the package being in the D fileset.)
For OP's original problem, chances are that while you installed the kernel vmlinuz, you didn't install/update /lib/modules/3.10.17-smp , which would have the 'build' and 'source' symlinks to your custom kernel source; VMware is most likely using your `uname -r` to determine your source path, IIRC.
I got tired to try to find the Kernel-Headers suitable for VMware. I recompiled my kernel with -smp off, etc... 1 day lost in vain.
Now I tried VirtualBox (SlackBuild.org)...
1 hour full blown installation!
What a nice surprise!
Good bye VMwa...
For me it is the solution to "where are the Kernel Headers?"
I have a very similar issue, not sure if I should open another thread. I
installed stock Slakware 4.1 (latest) on a VirtualBox 4.3.20 (latest) and its
corresponding Extension Pack running on Win 7. That worked flawless. I'm
trying to install the Guest Additions now. To this end, I mounted
VBoxGuestAdditions.iso onto /mnt/cdrom, and run sh ./VBoxLinuxAdditions.run
from within that directory.
This gave some errors that pointed me in the direction of installing DMKS,
which I did by downloading it from SlackBuilds and installing it. Now
VBoxLinuxAdditions.run still complained about missing kernel headers. I then
installed kernel-headers-3.10.17-x86-3.txz with installpkg. Just for your
information, uname -a gives
Linux slack 3.10.17 #2 SMP Fri Feb 14 16:45:28 CST
2014 x86_64 Intel(R) Core(TM) i5-3340 CPU @ 2.70GHz GenuineItel GNU/Linux
Now, the log file that results from running VBoxLinuxAdditions.run says:
Your kernel headers for kernel 3.10.17 cannot be found at
/lib/modules/3.10.17/build or /lib/modules/3.10.17/source.
Failed to install using DKMS, attempting to install without
/tmp/vbox.0/Makefile.include.headers:97: *** Error: unable to find the sources of your current linux kernel. Specify KERN_DIR=<directory> and run Make again. Stop.
The interesting part is that both
are symlinks to /usr/src/linux-3.10.17, but the latter does not exist, even if the installation of kernel-headers.3.10.17-x86-3.txz finished with a success message.
So my question is, where are the installed kernel headers?
And why are they not showing up were expected?
Every Linux distribution actually has two sets of kernel headers. One set is for general use, and is matched to glibc, and on Slackware this set is provided by the kernel-headers package. The other set is the kernel's own private internal headers, they are a small part of the kernel source, and on Slackware this set is provided by the kernel-source package.
Despite the messages Virtualbox does not need DKMS (which is not very useful on Slackware). However, for technical reasons, Virtualbox needs the kernel's private headers.
Thanks for the prompt answer. I'm aware of the two sets of kernel headers but I thought that kernel-source was actually the whole kernel source, not another set of headers. I'll try installing this and come back with the result.
I then installed kernel-headers-3.10.17-x86-3.txz with installpkg.
Did you not do a full Slackware install? I don't think I've ever run into issues with installing the guest additions with 14.1, and I am pretty sure I never had to install anything extra (including DMKS).
No, I didn't do a full install, since I'm sure I don't need all that stuff. In particular I deselected kernel source and headers during first installation.
Following the 5502's advice I installed kernel-source, which turned out to be (as one might expect!) the complete kernel source, not only the headers. But that did the trick. After the installation of the kernel source VBoxLinuxAdditions run without issues. I only wish I had not to download 73 MB of code when all I needed were some few KB of header files.
Anyway, thanks for your support!