Command explanations ln -s /static/bin/pwd /bin/pwd: The kernel source hard-wires the path to pwd to be /bin/pwd so we create a temporary symlink to deal with it. make mrproper: This will ensure that the kernel tree is absolutely clean. We do this because the kernel team recommend that this is done prior to each kernel compilation, and that we shouldn't rely on the source tree being automatically clean after untarring. make include/linux/version.h and make symlinks: This creates the include/linux/version.h, as well as the include/asm symlink. mkdir $LFS/usr/include/asm and cp include/asm/* $LFS/usr/include/asm: This copies the platform-specific assembler kernel header files to $LFS/usr/include/asm cp -R include/linux $LFS/usr/include: This command copies the cross-platform kernel header files to $LFS/usr/include touch $LFS/usr/include/linux/autoconf.h: Some kernel header files include this autoconf.h file, but outside the Linux source tree, that file has no meaning so we just create an empty one so we don't get compile errors whenever it happens to be a dependency of another kernel header file.