Summary of kernel building procedure


Subject: Summary of kernel building procedure
From: Kitt Thompson (omegaman@theshop.net)
Date: Sat Sep 29 2001 - 10:29:15 MDT


OK, here's the kernel building procedure as I understand it. I used Paul
Lucas' email summary
as the basis for the outline. Please add/modify/correct any entries.

  ?? denotes questions I have with the procedure.
  ** denotes explanitory or clarification notes.
  [REFERENCE: <text> ] references the email where a comment was taken and
inserted into an
              appropriate step.

--
Once you get all the RPMs, you:

1. cd /usr/src/linux

** or /home/your-directory-name/ if you placed the kernel source in a user directroy to avoid messing with the package controlled source in /usr/src [REFERENCE: Timothy A. Seufert response on 9/27/01 10:27 PM -0700 Message ID# p05101001b7d9b487b046@[10.0.0.42]]

2. Edit the Makefile and make EXTRAVERSION be something else like:

EXTRAVERSION = -sf

i.e., your initials. ?? Why do this? What is EXTRAVERSION?

3. make xconfig ** Runs the xwindows based kernel configuration program. Can also enter "make config" for prompted, terminal based program.

4. Load the old config from the configs subdirectory. ?? Do we do this if we are compiling a version of the kernel we have compiled before? Or Does this config file transcend kernel versions? By load, I assume it means copy the old config to the current source directory?

5. Add in IrDA as shown on my pages. ?? I have no idea why we do this. Where are the pages this is referring to?

6. Save and exit. ?? Is this part of the load old config of step 4 above?

7. make dep ** Gather dependencies for each of the sourcefiles.

8. make ... ** or "make vmlinux" but not "make zImage" as we want an umcompressed kernel image. [REFERENCE: Timothy A. Seufert response Thursday, September 27, 2001 10:27 PM -0700 Message ID# p05101001b7d9b487b046@[10.0.0.42] Ken Schweigert response on Thursday, September 27, 2001 2:02 PM -0400 Message ID# 20010927140206.E1449@byte-productions.com ]

?? Is this true for yaboot as well as xBoot?

... && make modules && make modules_install ** Only if you have specified some device drivers as loadable modules in the configure step 3 above.

9. Install the kernel:

strip vmlinux ?? The shell command "strip" discards symbols from object files. Why do we do this?

cp vmlinux /boot/vmlinux-2.4.x-sf ** Copy the newly compiled kernel to the boot directory. ?? Can this kernel file be named anything we choose? For example. could I rename it just vmlinux?

cp System.map /boot/System.map-2.4.x-sf ?? What is the System.map? Is it created at the same time the kernel is compiled?

(Substitute 2.4.x with your actual kernel version.)

.. to which for BootX you add this ...

10. Use the "mount" command to mount your boot HFS partition e.g. mount -thfs /dev/sda6 /mnt/sda6 where you replace /dev/sda6 and /mnt/sda6 with the appropriate details for your boot device and its assigned mount point ?? I assume you have to have installed the hfsutilities to use this command? For those of us with HFS+ formatted drives, we need hfsplus uitilities?

11. cp /boot/vmlinux-2.4.x-sf /mnt/sda6/"System Folder"/"Linux Kernels"/ ** Copy the newly created image to the Linux Kernels folder in the System Folder.

12. Reboot and select vmlinux-2.4.x-sf from the drop down list inBootX

That's it. --

Kitt



This archive was generated by hypermail 2a24 : Sat Sep 29 2001 - 09:39:06 MDT