內(nèi)核編譯
環(huán)境配置
本文以16.04 Ubuntu版本為例
安裝好Ubuntu系統(tǒng),首先第一步進(jìn)行源的更新
sudo vi /etc/apt/sources.list
替換阿里云的源
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
更新源
apt-get update
預(yù)裝內(nèi)核編譯所需要的工具鏈
sudo apt-get install ncurses-dev
sudo apt-get install libssl-dev
~~問題提示~~
> 出現(xiàn)這個或者fatal error: openssl/名單.h: No such file or directory媳板。都是沒有安裝libssl-dev~ libssl-dev包含libraries, header files and manpages,他是openssl的一部分捌朴,而openssl對ssl進(jìn)行了實(shí)現(xiàn)~?
解決方案: 使用sudo apt-get install libssl-dev來安裝libssl-dev即可
> make menuconfig' requires the ncurses libraries.
git clone 最新的內(nèi)核源碼(速度快)
git clone https://github.com/torvalds/linux.git
下載時間比較慢,所以需要等待多點(diǎn)時間馋袜。注意這個源碼的地址是在變更的男旗,如果過了時間舶斧,建議是重新查找內(nèi)核源碼的下載地址
GitHub上面的linux內(nèi)核的地址如下:
https://github.com/torvalds/linux
Linux編譯命令的四大金剛:
make -j8 menuconfig
make -j8
make modules_install
make install
中間過程基本是漫長的等待欣鳖,編譯的速度和宿主機(jī)的運(yùn)行速度有關(guān)。注意上面命令的-j8 表示的編譯時候并發(fā)的線程數(shù)目茴厉。如果電腦配置好泽台,可以適當(dāng)?shù)陌褦?shù)字變大。編譯時間可以大大縮短矾缓。
注意:在menuconfig 用戶可以自己選擇自己需要的模塊(module)怀酷,可以選擇編譯模塊的時候是編譯進(jìn)入內(nèi)核(build-in)還是編譯成那種可以自動加載模式(M)或者是不包含(N)。
下面分享幾個簡單工具
uname -sr
lsmod
這個命令可以查看當(dāng)前系統(tǒng)的源碼內(nèi)核
交流可以直接回復(fù)評論