軟體準備:
gcc-3.2.2-5.i386.rpm :用來編譯
ncurses-5.6.tar.gz:用來配合make menuconfig 命令配置核心
bison-2.4.tar.gz :文法解析器
flex-2.5.35.tar.bz2 :詞法解析器
m4-1.4.9.tar.gz:
modutils-2.4.26.tar.bz2 :
module-init-tools-3.2.2.tar.bz2: 2.6配套工具包
linux-2.6.15.5.tar.bz2 : 核心源碼包
第一步:
將上面所有軟體都拷貝到虛擬機器中(非/mnt下)
第二步:
將核心源碼包linux-2.6.15.5.tar.bz2 放入/usr/src目錄中,並用 tar -jxvf linux-2.6.15.5.tar.bz2 將其解壓
,然後用命令將linxu符號串連映射到linux-2.6.15.5 :ln -s linux-2.6.15.5 linux
第三步:rpm -ivh gcc-3.2.2-5.i386.rpm 安裝GCC
第三步:安裝ncurses-5.6.tar.gz
tar zxvf ncurses-5.6.tar.gz
進入解壓後目錄 ./configure
make
make install 安裝
第四步:安裝bison-2.4.tar.gz
./configure --prefix=/usr
make
make check :本軟體包內建測試套件,能執行一些測試,以確定它是否編譯正確
make install
第五步:安裝flex-2.5.35.tar.bz2
./configure --prefix=/usr &&
make &&
make install
一些程式並不知道flex而是試圖尋找lex程式(事實上,flex是實現lex功能的另一種也是更好的選擇)。為了滿足少數一些程式的需要,我們將建立一個lex指令碼,這個指令碼調用flex並通過它來模仿lex的輸出檔案命名慣例。
通過下面的命令建立一個新檔案 /usr/bin/lex :
cat > /usr/bin/lex << "EOF"
#!/bin/sh
# Begin /usr/bin/lex
exec /usr/bin/flex -l "$@"
# End /usr/bin/lex
EOF
chmod 755 /usr/bin/lex
第六步:升級m4
首先要卸載原來的m4,然後再安裝新的m4
./configure --prefix=/usr
make
make check :本軟體包內建測試套件,能執行一些測試,以確定它是否編譯正確
make install
第七步:安裝modutils-2.4.26.tar.bz2 (如果原來安裝了modutils 需要將其卸載:rpm -e --nodeps modutils)
./configure &&
make &&
make install
(參照:http://docs.huihoo.com/lfs/lfs-4.0/chapter06/modutils.html)
第八步:安裝module-init-tools-3.2.2.tar.bz2
tar -jxvf module-init-tools-3.2.2.tar.bz2
./configure --prefix=/sbin
make
make install
./generate-modprobe.conf /etc/modprobe.conf
第九步:配置核心
make menuconfig
第十步:編譯核心
make bzImage (產生使用gzip壓縮的核心,產生的檔案位於/usr/src/linux/arch/i386/boot目錄)
make modules modules_install(編譯核心模組並安裝到/lib/modules/2.6.15.5目錄)