Ubuntu 14.04 32位環境 編譯 Linux 4.19.0核心
-------ForLinux------
------------為作者原創文章,轉載請註明出處。------------------------
寫在前面:
首先,這是一篇Linux核心編譯的極其詳細的教程,以至於叫一個從未接觸過Linux的孩子照著流程也能編譯成功,所以——我勸你在時間充裕的情況下,大致瀏覽並關閉頁面自己嘗試,我編譯的時候也遇到了一些小坑,這些小坑大多在Ubuntu的問答社群裡都有解釋,也希望你能夠看下去英文社群的問答,因為你以後很多問題的答案也許都是in English。
下面進入正文:
一、下載Linux核心原始碼
進入上面的網址下載所需要編譯的Linux核心,我選擇了最新4.19.0版的核心,下載後為壓縮包。(*請先保證網路正常)
2、存放
建立一個專屬的資料夾,存放該壓縮包。
二、編譯部分
1、解壓縮
如下圖所示,並保證要進入linux-4.19的目錄,後續工作都需在此目錄下進行!
# tar xf linux-4.19.tar.xz
# cd linux-4.10.1/
2、安裝必要的包
我看見有教程給了很多包,其實以下兩個足夠了:
sudo apt-get install libssl-dev
sudo apt-get insatll libncurses5-dev
如圖所示:
此處注意:**CentOs下這兩包的名稱分別為ncurses-devel openssl-devel Ubuntu下包的名稱就不一樣了,大家這裡注意一下 :
在這裡可以檢索到你所需要的包。
3、驗證
看看都裝上了沒,總之,缺什麼補什麼少什麼添什麼(下圖有我的錯誤示範和正確示範,再次注意這是Ubuntu不是CentOs)
sudo apt-get install gcc make libssl-dev libncurses5-dev
4、構建.config檔案用於編譯
1.先我們用原先Ubuntu的配置檔案進行拷貝轉移
這樣對編譯極其方便,如圖:新開terminal開啟自己的boot,可以看到其下的config檔案:
ls /boot
拷貝轉移到當前目錄下:(不要盲目複製,根據自己的版本做修改)
cp /boot/config-4.4.0-31-generic ./
2、新增缺少項
這裡首先menuconfig,其次,還是那句話缺什麼補什麼少什麼添什麼:
make menuconfig
sudo apt-get install bison
sudo apt-get install flex
3、出界面
make menuconfig
進入介面
按右鍵進入load介面:
backspace刪除.config,匯入剛才的檔案:
點選ok儲存,這時候檔名才為.config:
然後預設的不要動,exit就好。
這時候再看下當前資料夾下:
ls -a
就能看見.config檔案夾了:
5、編譯
這時候基本上快結束了:
make
出現上面介面的時候就一直等吧,三四個小時也不為過。
make modules_install
就一直跑:
完了輸入:
make install
三、重啟
uname -a
檢視當前版本: