Kernel source code normally resides in /usr/src/linux, or in a subdirectory of /usr/src that includes the kernel version number, like /usr/src/linux-2.4.17. In the latter case, it's common practice to create a symbolic link called /usr/src/linux and point it to the true Linux source directory. This allows other programs that assume the source is in /usr/src/linux to function correctly, even if you want to keep multiple versions of the kernel source code; you can simply change the symbolic link as required.
Once you've uncompressed the kernel source code into /usr/src/linux, you should change to that directory in a normal command shell. You can then issue a command to configure the kernel options. Possibilities include the following:
• make config— This is the basic configuration tool. It asks you about every kernel option in turn, which can be tedious. If you make a mistake, you must normally go back and redo everything. For this reason, it's seldom used today.
• makemenuconfig— This configuration procedure uses text-based menus for configuration options, which enables you to look through the options and adjust only those that require changes. This is a common method of configuration in text-mode environments.
• make xconfig— This method is similar to make menuconfig, except that make xconfig uses GUI configuration menus. You can click on a topic to see its options, then click your mouse to select how or if you want to compile any option. This is a popular means of kernel configuration when the X Window System (or X for short) is running.
All of these methods present the same options, which are organized into broad categories. (Some categories also include subcategories.) When you select one category with make menuconfig or make xconfig, a new menu appears showing the options within that category. (Figure 1.1 shows this for make xconfig.) Of particular interest for networking are the Networking Options and Network Device Support categories, which are the subject of the next two sections.
No comments:
Post a Comment