Find the answer to your Linux question:
Results 1 to 3 of 3
Greetings! I am new to this forum. I have been using a different forum where I found the following information concerning kernel compilation by DROZZ (Bless his heart!) Newbie Guide ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Mar 2004
    Posts
    6

    Yet another question about 2.6.4 kernel installation....


    Greetings! I am new to this forum. I have been using a different forum where I found the following information concerning kernel compilation by DROZZ (Bless his heart!)

    Newbie Guide To Compiling A Kernel! ( post #1)

    first and foremost, THIS may pertain to you so read that first and then you can proceed
    and here is a similiar site

    www.kernel.org
    **"Go get the kernel source"**

    cd /usr/src
    **"Change Directory To /usr/src"**

    ls -alc
    **"check for symlink (ex. /usr/src/linux->/usr/src/linux-2.4.1"**
    **"also note since its being ask recently, that if there is no symlink"**
    **"then move on to the untarring of the kernel"**

    file linux
    **"double check with this command (output ex.) linux: symbolic link to linux-2.4.18-14"**

    rm linux
    **"remove symlink"**

    tar -zxvf linux-x.x.x.tar.gz
    **"unpack the tarball (new kernel)"**

    ln -s /usr/src/linux-x.x.x /usr/src/linux
    **"make a new link to the new kernel"**

    cd linux
    **"type this to change to the directory"**

    ----------------------------
    Now Comes The Fun Part~!
    ----------------------------
    make mrproper
    **"this removes the current .config and other files"**

    cp /usr/src/linux-2.4.x/.config /usr/src/linux
    ***this is if you want to use your old config***

    <-->Your Choice<-->
    make config
    **"basic config from terminal"**
    make menuconfig
    **"for ncurses GUI in the terminal"**
    make xconfig
    **"for X-based GUI with modular explanations"** (QT Based)
    make gconfig
    **"same as above, but for 2.6.x kernel only"** (GTK Based, and might be still buggy)

    /**********
    Note:
    Don't forget to add module support and kernel support for future hardware.
    Do not compile your harddrive and filesystem type as a module.
    The configure program enables you to specify an enormous number of features. It is advisable to skim through all the sections to get a feel for the different things you can do. Most options are about specifying whether you want a feature[*] compiled into the kernel image, [M] compiled as a module, or [ ] not compiled at all. You can also turn off module support altogether from Loadable module support -->. The kernel configuration is one LINUX program that offers lots of help--select < Help > on any feature. The raw help file is /usr/src/linux/Documentation/Configure.help can be also worth reading.
    When your done the config click exit and save current configuration. Your file is now known as .config .
    **********/
    SKIP THE FOLLOWING IF DOING A 2.6.x KERNEL
    make dep
    **"ensures dependancies such as include files are in place"**

    (vi, pico, emacs) Makefile
    **"Want A Unique Kernel Name? Edit /usr/src/linux/Makefile and change EXTRAVERSION"

    make clean
    **"to clean your sources for they compile correctly"**

    START HERE IF COMPILING A 2.6.x KERNEL

    make bzImage
    **"to make the kernel image (compile and creates compressed image of kernel)"**

    make modules
    **"compile your selected modules"**

    make modules_install
    **"to install newly compile modules (installs to /lib/modules/linux.x.x.x)"**


    --------------------------------------------
    Now Its Time To Install Your New Kernel~!
    --------------------------------------------

    Remove the following links:
    rm -rf /boot/System.map
    rm -rf /boot/vmlinuz

    Then copy the newly created kernel and system.map to /boot
    cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-x.x.x
    cp /usr/src/linux/System.map /boot/System.map-x.x.x

    Make the new links:
    ln -s /boot/vmlinuz-x.x.x /boot/vmlinuz
    ln -s /boot/System.map-x.x.x /boot/System.map

    Next remove existing initrd.img file:
    rm -rf /boot/initrd.x.x.x.img

    ..And create the new one:
    /sbin/mkinitrd /boot/initrd-x.x.x.img x.x.x
    (Note: )
    The last set of x.x.x is the eqivalent to your new kernel version and it looks to /lib/modules for that version.

    --------------------------------------------------------------------
    Use The Steps That Pertain To You
    If You Use Grub Then Edit grub.conf
    If You Use Lilo Then Edit lilo.conf
    --------------------------------------------------------------------
    remember to leave the entry to your old kernel image just in case,
    so modify what is in the config originally to point to the old image
    and make a new entry for you new image you just made ....
    --------------------------------------------------------------------

    <-> And Finally Edit Your /etc/grub.conf file <->
    <-> Note some distros now use menu.lst, so if you can't find grub or lilo, then you know what to look for <->

    title New Kernel
    kernel /vmlinuz-x.x.x ro root=LABEL=/
    initrd /initrd-x.x.x.img
    (Note: )
    look at the previous parameters in the grub.conf file and note what "root=" and use what is existing.

    Exit and Save grub.conf
    type "/sbin/grub-install"

    AND REBOOT!!!

    <-> And Finally Edit Your /etc/lilo.conf file <->
    image = /boot/vmlinuz-x.x.x
    label = New Kernel
    root = /dev/hdx
    read-only

    (Note: )
    look at the previous parameters in the lilo.conf file and note what "root =" and use what is existing.

    Exit and Save lilo.conf
    type "sbin/lilo"

    AND REBOOT!!!



    /******EDIT*******
    as requested there was wanting the instructions on how to apply patches to your kernel.
    ****END EDIT*****/

    read this or look below ..

    This step comes after untaring your kernel source.
    When you download the patch place it in the folder that you untarred you new kernel.
    Then typed:
    patch -E -p1 < sound_patch
    Purely an example and you would type whatever the file name is in replace of sound_patch.


    As of having alternative boot options, well this is no problem.. The stuff above that i tell you to add to your lilo or grub file above could just append the file, and just add ".old" to the title of your oringinal kernel name for you will know the difference. and whether its grub or lilo add "read-only", to the end of the oringinal entries in the lilo.conf, or grub.conf file.

    __________________




    I am to the point where I tried /sbin/mkinitrd /boot/initrd-2.6.4 and had a failure which said something about not being a dir. However, Drozz had mentioned to someone else that it might not be necessary if not using SCSI.
    Thus, I skipped it. Now I'm am to edity my /etc/grub.conf file. This is what I have changed it to:


    title Linux 2.6.4
    root (hd1,1)
    kernel /vmlinuz-2.6.4 ro root=(hd1,1)=/ hdd=ide-scsi
    initrd /initrd-2.6.4.img


    AND....this is what it used to be. Do I not need any of this information? What should it look like?

    root (hd1,1)
    install --stage2=/boot/grub/stage2 /boot/grub/stage1 d (hd0) /boot/grub/stage2 $
    quit

    Thank you so much for your help in this matter.

  2. #2
    Just Joined!
    Join Date
    Mar 2004
    Posts
    6

    PISSED OFF!

    Ok, I have come to this conclusion. COMPILING A KERNEL FOR SUSE IS A REDICULOUS PAIN IN THE ARSE!!!!!! OTHER PEOPLE WITH DIFFERENT DISTRO'S LOOK AT MY PROBLEMS AND ARE DUMBFOUNDED! SUSE NEEDS TO GET OFF THEIR HIGH HORSES AND MAKE A SHOWING OF SUPPORT FOR COMPILING! THE ONLY FORUM I HAVE FOUND THAT MIGHT GIVE US ANY HELP IS IN GERMAN. SPRECKEN SIE DEUTSCH? I DON'T!

  3. #3
    Linux Engineer Giro's Avatar
    Join Date
    Jul 2003
    Location
    England
    Posts
    1,219
    Dont start *****ing its normally the user who is the problem and im sure that it is now not Suse. Also i cannot gather what your problem is your post was just a tutorial tell us what your problem is can you boot the kernel ? have you even built the kernel? And yes i speek good German.

    EDIT :- I see your problem dont create and initrd image you dont need it all you need is the bzImage in arch/i386/boot/ copy it to boot and add the Kernel to your grub.conf.

    I just finished a tut on it here -> http://sub.gotdns.org/linux-tutorial...nux-kernel.php

  4. $spacer_open
    $spacer_close

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •