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.
If I compiled kernel 2.6.24.5 on a machine with GCC - 3.4.6 to use in a machine which has got GCC - 4.2.3 would it cause any issues?
The reason being the machine with GCC-4.2.3 only runs at 600MHz (the test machine,with slack 12.1) while the other which has GCC 3.4.6 (slack 11) runs at 1.8GHz, so compiling it on the latter would be faster.
i just built 2.6.24.7 on slackware-12.1 with the GCC that came with the distro, it runs great for me, i would suggest sticking with what Pat V. included with slackware-12.1 (the safer choice)...
Well the machine 12.1 is installed on only runs at 600MHz and takes quite long to compile the kernel and the modules, but there is another system that runs at 1.8GHz that has got Slackware 11 on with with GCC-3.4.6, so the question is if you compile the kernel on a system that has got GCC 4.2.3 will it run on a system without issues that has got GCC 3.4.6?
Considering a Linux system doesn't even require a compiler in order to run, it's highly unlikely that the version of gcc that you have installed will have any effect on the operation of the system. Just don't forget to copy all your kernel files (initrd/initramfs if present, and kernel modules).
You can probably compile the kernel on the faster box using `make bzImage modules`, and then copy the entire source directory over to the new box (using `cp -a`). You would then run `make modules_install` in the source directory and copy ./arch/i386/boot/bzImage and ./System.map to /boot (and rename them to vmlinuz-2.6.24.5 and System.map-2.6.24.5, respectively -- /boot/System.map should be a symlink to /boot/System.map-2.6.24.5). Then add the required entry to LILO and you should be all set (don't forget to run /sbin/lilo after editing it). Remember to create an initrd as well if you need to.
There are things to consider when you mix gccs with your kernels. If you try to compile a new module for it (say for a graphics driver, vmware, etc) you will run into problems saying that your installed gcc isn't the same as the one your kernel was compiled with. Perhaps if you compiled all things like that on the same machine and then copied them over it would be fine.
If you try to compile a new module for it (say for a graphics driver, vmware, etc) you will run into problems saying that your installed gcc isn't the same as the one your kernel was compiled with.
Bingo! that is exactly why i suggested "the safer choice" in my first comment...
There are things to consider when you mix gccs with your kernels. If you try to compile a new module for it (say for a graphics driver, vmware, etc) you will run into problems saying that your installed gcc isn't the same as the one your kernel was compiled with. Perhaps if you compiled all things like that on the same machine and then copied them over it would be fine.
Yeah thats what I was worried about, once the kernel has been installed and while it runs you realize that certain modules need to be compiled or certain functions of the kernel be compiled in, would it cause issues.
Out of interest, once it is in binary form why should the gcc version which it was compiled in be an issue unless the module was being built it in to the kernel?
Out of interest, once it is in binary form why should the gcc version which it was compiled in be an issue unless the module was being built it in to the kernel?
I don't think you can load a kernel module (say an Nvidia driver module or ndiswrapper module) that was compiled with a different gcc than than the one you compiled the kernel. You computer will complain.
Really 600MHz is not that slow and compiling on it should not take forever. I still do it with my 400Mhz PII.
Compiling a kernel even on an old 333 MHz box isn't TOO bad (I wouldn't compile the kernel while I was trying to get something done, but it's not like it takes 5 hours or anything), and 600 MHz should be much better. Unless this is an ARM processor (in which case kernel compilation would be very difficult in the first place and would take forever), you should be fine. (No, don't go to check if you have an ARM processor -- it was a joke. Unless you're compiling this for a PDA, in which case I pity you)
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.