|Lesson 8||Configuring the kernel |
|Objective||Configure Linux Kernel Options before Compilation |
Configuring your kernel correctly is crucial.
Not only must you decide what kernel options to include, you must also decide if they are modular or built into the kernel.
Linux makes it easy to set kernel options, but you must make sure you choose your options wisely.
When choosing kernel options, consider the specific hardware on your system and your need for protocols and services. Here are some
general guidelines to follow.
Under Code Maturity Level Options, check Prompt for development and/or incomplete code/drivers. If you do not check this option, certain essential services (most notably
rpc.nfsd) may not work correctly.
Optimize for your computer's processor family.
Turn off math emulation when your system has a dedicated math coprocessor. Intel 386 and 486 systems with a coprocessor, Pentiums,
and Alphas all have on-processor math coprocessors.
Turn off SMP (Symmetric Multi-Processor) support when your system only has a single CPU.
Modularize as much hardware support as possible.
Turn off ISDN IrDA, and old CD-ROM drivers support, unless you have these capabilities or devices.
Don't change the default sound configuration.
ISDN: An acronym for Integrated Services Digital Network, ISDN is a standards specification for data
transmission over telephone wires and other land-based media.
IrDA: An acronym for Infrared Data Association, IrDA is an international standards body that plans the
hardware and software requirements for wireless, infrared data communication.
Configuring the kernel
To configure the kernel, follow the following four steps.
Change to the
make mrproper to restore the sources to a clean state.
Copy one of Red Hat's default configuration files from the
configs/ directory to
arch/i386/defconfig. Red Hat
provides these default configurations for a variety of hardware platforms. The settings inside of each make configuring the kernel
make oldconfig to create a starting Linux kernel configuration file from the default configuration copied in the
- Create the kernel configuration file using one of the standard configuration utilities:
make xconfig, make menuconfig, or make config.
EXTRAVERSION= line in
make dep to create the source dependencies and propagate configuration information to all makefiles in the development
make clean to remove old object files.
If you build the kernel in the future and use the same configuration, you do not need to perform steps two, three, and four.
You need to do these steps only the first time you are rebuilding a Red Hat Linux kernel.
The next lesson presents the kernel and modules build and install procedures.