Red Hat custom Kernel compilation mini-How-To for Red Hat 8-9
Red HatThis forum is for the discussion of Red Hat 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.
I had some of those problems myself with the latest 2.6 kernel I was trying to compile, but the install process turned out to say that I had no loopback devices... In any case while using RH 9 I had a similar problem also, though in the kernel I was trying to compile the problem turned out to be related to the crypto APIs. If you use Fedora Core, you should edit the top level makefile and substitute any "gcc" occurance with [b]gcc32[b], that'll cause to use the gcc version 3.2 instead of the standard (gcc) 3.3. that comes with Fedora.
In the first page of this tutorial you'll find the page, just not to make you go all the way back, here it is www.kernel.org
If you follow the steps in the first page, you'll have no problems. Just make sure you have modutils-2.4.25-13 installed (you may find the package by looking in rpmfind.net Other than that, it's all there.
I'm assuming you know how to check what packages you have installed, I also assume you know how to upgrade or install new packages for your distribution. If you do not know these things, I'd suggest you to read a little more on RPM before attempting to upgrade your kernel from source.
Where/when exactly are you having these problems? Unresolved Symbols (AFAIK) are most commonly due to a mismatch regarding the compiler used to build the kernel and the one used for the modules, you may want to check that out (In Fedora this is quite evident!) or because you are loading a module which need another loaded first.
Sorry, that was not my intention... Basically you have to use the same compiler for both the modules and the kernel, this should be taken care off by the Makefile. If you are using Fedora Core, edit the Makefile and change all instances of gcc to gcc32 (for that to work you should install the kernel sources using the program redhat-config-packages, if you did not install it at install time). Hope this clarifies a little bit more: Fedora comes with gcc 3.3 which has problems with kernel compilations/modules, etc. As a work-around the Fedora guys compiled the kernel using the RH 9 compiler (gcc 3.2, hence gcc32 command), and supplied that gcc as a dependency to the kernel sources. However if you're not using Fedora, its a little bit difficult to assist you as I don't know at what stage this problem arises. In this case, please post back more information.
I have GCC- 2.96 on RH7.3. I compiled a 2.4.24 kernel with this 2.96 and everything went well. I wanted then to upgrade to 2.6.1 but i had problems with 2.96. I upgraded to gcc -3.3.2 and glibc-2.3.2 but keeping my GCC-2.96.
I uninstalled the 2.4.24 in readiness to compile my 2.6.1 Kernel. To my shock i got the "Unresolved symbols problems whether i use GCC-2.96 or GCC-3.3.2. It fails when i try to install Modules.
I tried to revert to my original 2.4.24 Kernel and also could not get it to install the modules.
You most likely messed your system with the GCC and glibc upgrade (don't get me wrong, I also did that to my 7.3 install, it survived quite a while until I wanted to install X 4.3 from XF86's binary distribution, then it almost died ).
So if I understand correctly when you
# make modules_install
Is when it complaints about unresolved symbols, or when you actually boot the system and the modules get loaded?
How do you differenciate between the two compilers? Maybe they're bein addressed in different ways during the different stages of the compilation process?