Kernel/Configuration/en

This article describes the manual configuration and setup of the Linux kernel. For an automatic method see the genkernel article.

Set symlink
The symlink should always point to the kernel sources that is currently being used. This can be done in one of three ways:


 * 1. Installing the kernel sources with active symlink USE flag
 * This will make the point to your newly installed kernel sources. If necessary, it can still be modified later with the following two methods:


 * 2. Setting the symlink with eselect:


 * This outputs the available kernel sources. The asterisk indicates the chosen sources. To change the kernel sources, e.g. to the second entry, do:


 * 3. Setting the symlink manually:

Configuration tools
The kernel offers several tools to configure itself:

There are also several scripts to create miscellaneous default configurations. See:

Configuration
This article describes the configuration using make menuconfig, but the procedure is similar for the other menus.

Usage
In the shown menu the blue bar indicates your position. With the arrow keys and  you can change the position. The arrow keys and  traverse the menu bar in the bottom and define what happens when you hit the  key. Select switches to a sub menu - the menu entries ending with ---> -, while Exit exits a sub menu. As an alternative you can also hit the key twice.

Pressing an associated letter key - will move the position of the cursor lines that have characters in bold. The, , keys are excluded from navigation in this way; they are sanctified for other purposes. If a line begins with a Y, M, or N, the next character will be bold and capable of being jumped to. For example, relative to the cursor's current position, if the next line reads "Network Device Support --->" pressing the key will move the cursor to that line.

Menu entries, which start with brackets, are drivers or features which can be activated:

Furthermore some menu entries have a tag at the end:

Most options have a description, which get by pressing the key or choose in the menu bar Help.

Driver selection
See the hardware detection article and the articles in the Hardware category.

Search modules
Within menuconfig, you can use to search modules by name.

Within menuconfig, use the key to search modules by name.

As shown below, the search result will show numbers in front of the matches. Pressing in the example below would make menuconfig jump straight to the option Bluetooth device drivers in the menu structure.

Enabling Gentoo Linux common settings
There is a kernel configuration option called  only present in  and other Kernel Project maintained kernels. It does nothing on its own, but sets various required configuration options for typical installations.

This setting automatically selects tmpfs and devtmpfs support, which are needed for handling on Gentoo Linux, but might be expanded in the future to enable other mandatory settings for a Gentoo Linux system. For more information, read the help information available through the kernel configuration system as described earlier in this guide.

Build
After configuring the kernel you have to compile it:

If you have a processor with multiple cores, you can let all the cores do the work. For this add the parameter -j(NUMBER_CORES +1). For a dual core processor:

Setup
If activated drivers as modules, you have to install them:

The modules will be copied to a sub directory of.

To install the actual kernel:

This command executes /sbin/installkernel, which is part of the package. ''The new kernel is installed into. If a symbolic link already exists, it is refreshed by making a link from  to the new kernel, and the previously installed kernel is available as . (installkernel'' man page). The same for and  files. These symlinks are handy, because they point always to the newest kernel without changing the file path (e.g. you can use them in the bootloader configuration).

Bootloader
Change your bootloader configuration to pick up at boot the new kernel.

Finally restart your system with the new kernel.

Comparing current kernel configuration with default configuration
Use the following procedure to get an overview over the kernel configurations that deviate from the default. Keep in mind that the modification of configuration setting may entail additional configuration settings.

The search function in make menuconfig can be used to look up the flags and their interpretation. When you're done, clean up: