The Ultimate "When Will The Next Slackware Release Arrive" MegaThread
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
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.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Oh, btw, is bit-torrent the best way to get slackware 11 when it comes out, can the mirror's keep up?
I've bittorrented the few Slackware releases and it downloads just fine. I usually can get all four .iso files overnight. FTP is probably faster, but bittorrent is definitely easier on the mirrors.
Do NOT use the /usr/src/linux area! Build your kernel under /home is the part I meant.
These instructions date back to a time when kernel headers were kept under /usr/src/linux. This hasn't been true of Slackware for many years now. These days, kernel headers are kept under /usr/include.
Back when Linus wrote that spiel, the kernel source tarball would untar into a directory simply called 'linux' as opposed to the modern behaviour of untarring itself into a directory with the version number (eg: linux-2.6.17.11). Essentially, this meant that you couldn't keep more than one source tree under /usr/src.
Nowadays, we can keep as many different source trees as we want under /usr/src, and also because the glibc kernel headers are no longer kept under /usr/src/linux the whole argument about not using this area is moot.
Kernel headers are stored in /usr/include in every single modern distro, and it does not matter how a distro places it's header files, as for a very long time untarring the kernel source creates a /usr/src/linux-version instead of /usr/src/linux like it used to, so nothing can ever get overwritten by using /usr/src, except for previous kernel source directories(and then only the very exact same version).
You can safely build in /usr/src, and infact I am pretty sure it is strongly recommended to do so now too, because a lot of drivers search in /usr/src/ for the kernel source.
Hmm, I've been putting my updated kernel source code in my /home directory. I just checked and the 2.4.33.2 source is in /usr/src. And all the headers are 2.4.33.2. But my kernel is 2.6.17.7.
When I compile source code, everything seems to work all right. But is it?
And what would happen if I DID put the kernel source for 2.6 under /usr/src, but the header files were still 2.4???
--vonSt
PS: You want Slackware 2.6 headers? Look in the /extra/linux-2.6.17.11 directory! Of course, there's a warning that says "your OS may break," but if you want an ALL 2.6 version of Slackware...
When I compile source code for other applications, everything seems to work all right. I suppose, given what we've been discussing, if I don't change my /usr/src/linux-2.4 (and my headers are 2.4), then when I compile something like Timidity++, I'm really compiling it under 2.4! Right?
And then, the follow-on question is:
If I DO change to /usr/src/linux-2.6 (and my headers are 2.4). What do I get when I compile Timidity++?
One major problem with building in /home. Build and run your kernel, then delete the original source dir, then try and build an out-of-tree module. I'd rather be able to just let my kernel source sit in a generic spot, than to be forced into leaving my kernel source alone in /home.
This is a copy and paste from my response to this question. I think it relates to this discussion as well.
Quote:
You need to keep the 2.4.x headers installed. The headers are used by GCC when compiling programs and it will expect to find the headers it was compiled against. If you need to compile something specific to your kernel (such as a kernel modules), it will look for the headers installed in the /usr/src/linux-<version>. The most common method is to follow the link '/lib/modules/<version #>/source'. However, If you are compiling a regular program, it will usually look for headers GCC was compiled against in /usr/include/linux (IE. The headers package).
It's ok to get rid of the kernel headers GCC was compiled against, but you will need to recompile your "toolchain" as it's refered to in Linux From Scratch. If you build the source in your home directory, I'm pretty sure the link I refered to above will point to it. I'm npt sure since I build in /usr/src/. Maybe one of you home builders can confirm the link will point to whereever the source is built from when you do "make modules_install".
When I compile source code for other applications, everything seems to work all right. I suppose, given what we've been discussing, if I don't change my /usr/src/linux-2.4 (and my headers are 2.4), then when I compile something like Timidity++, I'm really compiling it under 2.4! Right?
And then, the follow-on question is:
If I DO change to /usr/src/linux-2.6 (and my headers are 2.4). What do I get when I compile Timidity++?
--vonSt
Wheter you change your /usr/src/linux-2.{4,6} is irrelevant for Timidity++, since it doesn't use the kernel source/headers at all (the most system-level thing it links against is glibc (obviously) and alsa-lib, if enabled). And even if it used them, it won't matter whether you change it at all.
The thing which matters is (are? I need to retake my english classes) the linux headers (/usr/include/linux, which in some distros used to be a symlink to /usr/src/linux/include, which is a terribly wrong idea), but they only matter to low level stuff which needs to comunicate directly with the kernel using structures (like glibc, or X).
So, unless you compile a lot of that stuff, changing the kernel headers will probably never get you in trouble (but that doesn't mean that is a good idea). And changing /usr/src/linux* won't (or at least shouldn't) affect anything at all.
i like to compile the kernel in /tmp, and then make a slackpack of it (and another for the modules)... as for the source, i also make a slackpack of that (right after compilation)... then i just upgradepkg all three of them...
That's a pretty heavy /tmp, and kind of breaks the rule of temp files as I understand it. /tmp is supposed to be able to be mounted tmpfs, where everything in /tmp dissappears when you reboot. Also, /tmp is a really insecure place to put something so critical like kernel source. Anybody might be able to modify the source to put in a backdoor while you are working on config and etc.
That's a pretty heavy /tmp, and kind of breaks the rule of temp files as I understand it. /tmp is supposed to be able to be mounted tmpfs, where everything in /tmp dissappears when you reboot. Also, /tmp is a really insecure place to put something so critical like kernel source. Anybody might be able to modify the source to put in a backdoor while you are working on config and etc.
my /tmp doesn't use tmpfs, it's a regular sticky bit directory...
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.