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.
hey guys, me again. every compile guide I look at seems to be different, and some of them have more info than others. after completely messing up my system a few times, I was hoping to find a complete guide, front to back, from getting the new kernel source, to booting the new kernel. All the info between, configuring, installing, LILO adjustments and so on.
I was hoping to find a complete guide, front to back, from getting the new kernel source, to booting the new kernel. All the info between, configuring, installing, LILO adjustments and so on.
1) The kernel is a "moving target"
2) Many configuration options are system specific or user preference specific
The best guides can only give generalizations. To clarify, you are more than likely making the wrong configuration selections. Everyone does when they first learn (even after they learn ). It is the only section that isn't "cut 'n paste" simple.
The best advice is to read the guides that you find. Read the kernel documentation. Try to understand the "why" of the guides. Start with a config that you know to work (at least boots). Tweak from there. The config selections are the only really important thing that tends to change.
In fact it's really simple and good to compile kernel by yourself, what I did just followed the following:
#tar xvfj linux-xxx.tar.bz2 -C /usr/src/
#rm -f /usr/src/linux && ln -s /usr/src/linux-xxx linux
... choose what you need especially for your hardware ...
#cp arch/i386/boot/bzImage /boot/kernel-xxx
#cp System.map /boot/System.map-xxx
#cp .config /boot/config-xxx
...Then modify your /etc/lilo.conf and add the following...
image = /boot/kernel-xxx
root = /dev/hdxy
label = slkxxx
... At last execute the command: ...
... Ok ,reboot for the new kernel ...
- If you install the full sources, put the kernel tarball in a
directory where you have permissions (eg. your home directory) and
gzip -cd linux-2.6.XX.tar.gz | tar xvf -
Replace "XX" with the version number of the latest kernel.
Do NOT use the /usr/src/linux area! This area has a (usually
incomplete) set of kernel headers that are used by the library header
files. They should match the library, and not get messed up by
whatever the kernel-du-jour happens to be."
That has got to be the most widely ignored suggestion in the history of Linux. Particularly since things compiled against the kernel source (like drivers) expect the source to be in /usr/src/linux-kernelversion and will fail miserably if it isn't there. OK, you can always point to the kernel sources if they are elsewhere, but it seems as if the community expects them in /usr/src.
Heck, that is where the Slackware package puts it.
That has got to be the most widely ignored suggestion in the history of Linux. Particularly since things compiled against the kernel source (like drivers) expect the source to be in /usr/src/linux-kernelversion and will fail miserably if it isn't there.
Hmmm... I have never, ever had a problem with a module or driver compiling after building my kernel in my home directory. If there is a package out there that does not compile when the kernel has been built according to the official instructions as set forth by the kernel team, then it's the problem of the maintainer of that package not the kernel team. Perhaps if more people used the correct procedure then whatever problems you have apparently encountered would be eliminated.