编译kernel是遇见的错误和解决方法
需要安装libssl-dev
首先介绍下openssl,openssl是web安全通信的基石,SSL全名叫secure socket layer(安全套接字库层),openssl是对SSL的实现。
通过make编译高版本的kernel时会出现如此错误:
scripts/extract-cert.c:21:10: fatal error: openssl/bio.h: No such file or directory
此时只需要安装:libssl-dev即可,写本文档时使用的是Debian9操作系统。
输入进行安装:
sudo apt-get install libssl-dev
使用make编译kernel时默认生成vmlinux
uboot启动用到的zImage和uImage都是经过压缩的文件,因此在编译kernel时出现如下错误,说明没有缺少压缩工具:
/bin/sh: 1: lzop: not found
需要安装lzop:
sudo apt-get install lzop
需要安装u-boot-tools
为什么要安装u-boot-tools呢?这个就需要从linux的启动说起了,编译linux会生成Image,没有经过压缩的内核,而u-boot启动需要的uImage是在压缩后的zImage上加入特定的头后生成的。生成uImage需要用到u-boot-tools,当然现在的u-boot可以直接使用zImage启动。
当使用如下命令编译时:
make uImage ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j12 LOADADDR=80800000
出现如下错误:
"mkimage" command not found - U-Boot images will not be built
就需要安装u-boot-tools:
sudo apt-get install u-boot-tools
本文介绍了在编译Linux Kernel过程中遇到的一些常见错误及其解决方法,包括安装必要的开发库如libssl-dev、lzop等工具,以及为生成u-boot可用的uImage所需的u-boot-tools。

4758

被折叠的 条评论
为什么被折叠?



