一、Linux配置與編譯
Linux具有可定製的優點,具體步驟如下:
1、清除臨時檔案、中間檔案和設定檔
(1)make clean : 刪除大部分產生的檔案,但是保留設定檔
(2)make mrproper : 刪除全部產生的檔案和設定檔
(3)make distclean : 在make mrproper基礎上再刪除編輯器的補丁和備份檔案
2、確定目標系統的軟硬體設定情況,比如CPU的類型、網卡的型號、所需支援的網路通訊協定
3、使用如下命令之一配置核心:
(1)make config : 基於文字模式的互動式配置
(2)make menuconfig : 基於文字模式的菜單型配置,(推薦使用)
(3)make oldconfig : 使用已有的設定檔(.config),
(4)make xconfig : 圖形化的配置
使用配置命令後,會在核心源碼的根目錄下產生一個.config檔案
註:實際應用中,並不需要我們對所有的配置選項逐一閱讀,而是在某個已有的的配置上再配置
4、編譯核心:
I、(1)make zimage (2)make bzimage
區別:在X86平台,zimage 只能用於小於512K的核心;另外如果想擷取詳細的編譯資訊則可以加上參數
make zimage V=1; make bzimage V=1;
II、編譯好的核心位於 arch/<cpu>/boot 目錄下
5、編譯核心模組 : make modules
6、安裝核心模組 : make modules_install,將編譯好的核心模組從核心原始碼目錄 copy 至 /lib/modules 下
7、製作 init ramdisk:
mkinitrd initrd-$vsersion $version ,注意這個命令有兩個參數,第一個參數我們一般習慣上取名方式是:initrd-$version, 第2個參數,就必須是 實際的核心版本號碼了,,eg:make
initrd-2.6.29 2.6.29
8、核心安裝(eg:X86平台)
(1)cp arch/x86/boot/bzimage /boot/vmlinuz-$version //將bzimage檔案拷貝到boot目錄下,vmlinuz-$version 名字隨便起,但我們一般以這種形式
(2)cp $initrd /boot/ //將rimdisk 也拷貝到/boot目錄下
(3)修改/etc/grub.conf 或者 /etc/lilo.conf