# Linux-&linux-version;

## Installation of the kernel

Here a temporary cross-compiled kernel will be built. When configuring it, select the minimal amount of options required to boot the target machine and build the final system. I.e., no support for sound, printers, etc. will be needed.

Also, try to avoid the use of modules if possible, and don't use the resulting kernel image for production systems.

Configure the kernel via a menu-driven interface:

    make ARCH=i386 CROSS_COMPILE=${CLFS_TARGET}- menuconfig

    make ARCH=i386 CROSS_COMPILE=${CLFS_TARGET}-

If the use of kernel modules can't be avoided, an `/etc/modprobe.conf` file may be needed. Information pertaining to modules and kernel configuration is located in the kernel documentation in the `Documentation` directory of the kernel sources tree. The `modprobe.conf` man page may also be of interest.

    make ARCH=i386 CROSS_COMPILE=${CLFS_TARGET}- \
        INSTALL_MOD_PATH=${CLFS} modules_install

After kernel compilation is complete, additional steps are required to complete the installation. Some files need to be copied to the `${CLFS}/boot` directory.

    cp -v arch/i386/boot/bzImage ${CLFS}/boot/vmlinuz-clfs-&linux-version;

    cp -v System.map ${CLFS}/boot/System.map-&linux-version;

    cp -v .config ${CLFS}/boot/config-&linux-version;

Details on this package are located in contents-kernel