1. 程式人生 > >Linux 核心編譯

Linux 核心編譯

Linux核心編譯:     編譯核心的步驟:         1.配置核心選項             支援"更新"模式的配置方式:                 a.make config :基於命令放以命令的方式去配置核心中可配置的每個選項;                 b.make menuconfig :基於curses的文字視窗介面來選擇編譯;                 c.make gconfig:基於GTk開發環境的視窗介面來選擇編譯;                 d.make kconfig:基於Qt開發環境的視窗介面來選擇編譯;             支援"全新配置"模式的配置方式:                 a.make defconfig:基於核心為目標平臺提供的"預設"配置進行配置;                 b.make allnoconfig:所有選項均回答為"no";         2.編譯             make [-j #]                 只編譯核心中的一部分內容:                     a.只編譯某子目錄中的相關程式碼                         cd /usr/src/linux/                         make DIR/                             Note:編譯任何功能都只能在核心原始碼目錄中,填寫相對路徑實現編譯特定功能;                     b.只編譯一個特定的模組的相關程式碼                         只編譯一個模組是沒必要對它做編譯安裝的,只需把它複製到/lib/modules/目錄中對應的路徑即可,然後使用modprobe進行模組安裝即可;                             cd /usr/src/linux/                             make DIR/FILE.ko                 交叉編譯核心:                     通常一個程式經過編譯以後,只適用於某一特定平臺執行;                     所謂交叉編譯就是所編譯的目標平臺,與當前平臺不相同,比如通過Linux編譯之後放在安卓上使用的軟體;                         make ARCH=arch_name                     獲取特定目標平臺的使用幫助                         make ARCH=arch_name help                 對已經執行過編譯操作的核心原碼樹做重新編譯:                     事先清理操作:                         make clean:清理大多數編譯生成的檔案,但會保留config檔案等;                         make mrproper:清理所有編譯生成的檔案、config以及某些備份檔案;                         make distclean:mrproper+patches以及編輯器備份檔案;                             Note:除非確定之前的設定不需要了,否則使用後兩種方法時需慎重!!!             screen命令:creen manager with VT100/ANSI terminal emulation                 開啟新的screen:                     screen                 退出並關閉screen:                     exit                 剝離當前的screen:                     Ctrl+a→d                 顯示所有已開啟的screen:                     screen -ls                 恢復某screen:                     screen -r scr_number               注:根據馬哥視訊做的學習筆記,如有錯誤,歡迎指正;侵刪