如何编译内核源码

  1. https://www.kernel.org/ 下载内核源码 linux-5.4.128

image-20210630105003356

  1. sudo su 切换成 root,将内核源码解压到 /usr/src 目录
1
2
xz -d linux-5.4.128.tar.xz
tar xvf linux-5.4.128.tar -C /usr/src
  1. 进入源码目录 /usr/src/linux-5.4.128
1
make menuconfig
  • 报错 1

image-20210630105059693

解决方法 https://blog.csdn.net/zhangbaoxiang/article/details/114288159

1
2
apt install flex
apt install bison

重新来一次就可以成功配置

  • 报错 2
1
sudo apt-get install libncurses5-dev

解决方法 https://blog.csdn.net/bhniunan/article/details/104039373

1
apt install libncurses5-dev
  1. 编译
1
make

报错

1
scripts/sign-file.c:25:10: fatal error: openssl/opensslv.h: No such file or directory

解决方法

1
apt install libssl-dev

重新执行 make,产生报错 2

解决方法 参考评论vi .config,将 CONFIG_SYSTEM_TRUSTED_KEYS 设为空串

1
CONFIG_SYSTEM_TRUSTED_KEYS=""

image-20210630111334911

image-20210630111531298

重新执行 make,有警告

1
warning: Cannot use CONFIG_STACK_VALIDATION=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel

但无报错



----------- 本文结束 -----------




0%