Linux-next 不是适用于任何人的!
@> The linux-next tree is the holding area for patches aimed at the next kernel merge window. If you're doing bleeding edge kernel development, you may want to work from that tree rather than Linus Torvalds' mainline tree.
@> The linux-next tree is the holding area for patches aimed at the next kernel merge window. If you're doing bleeding edge kernel development, you may want to work from that tree rather than Linus Torvalds' mainline tree.
获取源代码
去git仓库找到最新的commit
(被标注为绿色 HEAD 的)。确认你这是你需要的,clone
下来。
注意:Linux Kernel
很大,保证空间足够!
修改配置
先复制你自己机器的配置文件
cp /boot/config-"$(uname -r)" .config
接下来,更新配置文件到最新的
make olddefconfig
如果你在用Debian
或Ubuntu
或他们的衍生版本,务必关闭默认签名证书
./scripts/config --file .config --set-str SYSTEM_TRUSTED_KEYS ''
./scripts/config --file .config --set-str SYSTEM_REVOCATION_KEYS ''
自定义配置
defconfig
: 默认配置。allmodconfig
: 根据当前系统状态,尽可能地把项目构建为可加载模块(而非内建)。tinyconfig
: 极简的 Linux 内核。
一般来说,建议使用defconfig
make defconfig
接下来可以在默认配置的基础上自定义配置了。
make menuconfig
在此界面,你可以根据各选项的类型来进行切换操作。
有两类可切换选项:- 布尔状态选项:这类选项只能关闭([ ])或作为内建组件开启([*])。
三态选项:这类选项可以关闭(< >)、内建(<*>),或作为可加载模块(
)进行构建。
保存好之后,就可以编译了编译
make -j$(nproc) 2>&1 | tee log
有报错就修吧