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.
I tried compiling my own kernel from 2.4.19 source, but ended up with too many issues to list...most from my inexperience with configuring a kernel. I know I missed too many things while configuring the kernel, which is where I went wrong. I currently have a working 2.4.18 kernel but want to move to 2.4.19 for because I have hardware that isn't supported in 2.4.18. So what is the best way to do this? I am thinking that I can copy the kernel from the slackware/current directory (ftp site) to /boot, and my working .config to the 2.4.19 source tree. Then do:
make clean
menuconfig
make dep
make bzImage
make modules
make modules_install
mv /vmlinuz /vmlinuz.old
cat arch/i386/boot/bzImage > /vmlinuz
mv /boot/System.map /boot/System.map.old
cp System.map /boot/System.map
Then edit /etc/lilo.conf
lilo -v
and if all looks good, reboot? I think I am missing something here or maybe doing too much. Help?
Start with "make mrproper" then copy your ORIGINAL /boot/config to /usr/src/linux-2.4.19/.config and type "make oldconfig" then continue on with make menuconfig/xconfig. This should give you most of the basic things your current kernel has now just make sure to not remove anything critical such as ext2 support and it should work.
The link trickykid provided has great info, check it if you have any extra questions.
Man...this is good stuff. You know, I spent 3 hours trying all sorts of things, and I forgot that I posted this. I now see the things I was missing so I am trying it now. I actually managed to get to a good point but I kept getting /dev/mouse device not found, and x wouldn't start. After I get this to work, I will attempt to install drivers for my Radeon 9700 Pro...should be fun! Thanks guys for the replies and your time.
Ok...I figured out why the original kernel kept booting and fixed that. I must not have commented out the line "export PATH=/boot" in Makefile, so the new vmlinuz and System.map were going to / instead of /boot. Anyway here is what I did...
First, I edited lilo.conf and Makefile according to the link from trickykid (thanks)
cd /usr/src/linux-2.4.19
ran make mrproper
cp /usr/src/linux-2.4.18/.config /usr/src/linux-2.4.19/.config
ran make oldconfig
ran make dep
ran make clean
ran make bzImage
ran make install
ran make modules
ran make modules_install
ran lilo
rebooted
All went well untill I got an oops from gpm.../dev/mouse : no such device
It's a USB mouse, and I tried recompiling with different USB settings and nothing at all worked. I believe that the problem lies from copying the .config from the 2.4.18 source, and configuring the new kernel from that. Does 2.4.19 handle something differently with USB and HID and /dev/mouse? Anyway, the original kernel is still ok. I copied the .config file from the /slackware-current/kernels/bare.i directory on slacks site. I will try to compile using this config and see what happens. I don't know what else it could be...the kernel configs were the same as far as I could tell.
Quote:
then copy your ORIGINAL /boot/config to /usr/src/linux-2.4.19/.config and type "make oldconfig"
Darin - I tried this also and got the same thing...which is another reason why I am thinking that I need the 2.4.19 .config.
OK when I recompile my kernel I only do a make menuconfig then after that I run a make dep; make clean; make bzImage then I proceed to cp the arch/i386/boot/bzImage /boot then add the entry for the bzImage to /etc/lilo.conf ....if I do a make modules and make modules_install it tends to mess up for some reason.
Depending on what you have compiled into your kernel or set as M in there yes it does.... I never change any of my kernel when I recompile anymore because slackware-current tends to load a lot of the modules for me, but on a recompile on my older 8.1 system, I either inclide it with a * or make it a module with an M. Otherwise it won't work if I install the modules....keep in mind you may need to edit /etc/rc.d/rc.modules too...
Did you edit and make the changes to lilo.conf to reflect the new kernel and old kernel before recompiling steps ?
Also I noticed you copied your old config file to your new 2.4.19 directory. Did you make sure its detecting that config to properly configure your kernel ? After copying, try to do a make menuconfig and load it that way and then proceed with the steps. But I'm sure its the way your setting up your lilo or not adding the new kernel to boot to. I would check that first.
Did you edit and make the changes to lilo.conf to reflect the new kernel and old kernel before recompiling steps ?
Yes I did. I followed the steps that were in the link you provided exactly. Everything seemed fine...and I know the new kernel booted because I could catch the kernel version, and also, when I did a make oldconfig, it prompted for a N/y for the {NEW} items. Also, after I did a make oldconfig, I did an xconfig and it appeared to be ok. Keep in mind that I have tried this about 12 times now, so I have tried from no config, to an old config, to this and that. I just haven't tried what I seem to be missing of course.
All I did with lilo was copy what was there and add .old to the end of System.map and vmlinuz, and made the label slack.old. The original label "Linux" and its contents remained unchanged. Also, when I ran lilo, it added slack.old.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.