預編譯的內核
發布時間: 2025-03-26 16:40:53
① 為什麼自己編譯的linux內核和驅動比系統自帶的要大的多
1、配置中有很多調試選項(不一定帶「debug」字樣),而且位置也很分散;
2、發行版自帶內核往往經過長期、仔細的配置,會比個人十幾分鍾的配置更全面。
這兩個原因對內核及模塊的大小有影響,但不大。
編譯出的內核模塊中包含多個運行時用不到的段(編譯連接時可能要用,不是錯誤),發行版中一般會刪掉,這很有可能是原因所在。
可以考慮用 [strip -S mod_name.ko] 來處理一下內核模塊(注意:這里選項要用大寫S,小寫s或不寫會連符號表一起刪掉,導致模塊無法載入),看看文件有沒有變小(別對內核本身這么干)。
如果以上命令明顯減小了文件,可以考慮在編譯內核前定義環境變數INSTALL_MOD_STRIP為1(數字),這樣make moles_install後的內核模塊都是經 strip 處理過的了。
熱點內容