Yocto SDK 内核源 make 脚本失败
Yocto SDK Kernel Source make scripts fails
我正在尝试使用通过 bitbake
生成的 Yocto SDK 编译我的内核模块。
SDK 构建没有问题,但是当我尝试 运行 make scripts ARCH=arm64
在我目标的 sysroot 的内核源目录中时,我遇到了一个关于丢失 header 文件的问题:
...
HOSTCC scripts/conmakehash
HOSTCC scripts/sortextable
HOSTCC scripts/asn1_compiler
HOSTCC scripts/extract-cert
scripts/extract-cert.c:21:10: fatal error: openssl/bio.h: No such file or directory
21 | #include <openssl/bio.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.host:107: scripts/extract-cert] Error 1
make: *** [Makefile:1096: scripts] Error 2
我的图像 .bb 文件中有 TOOLCHAIN_TARGET_TASK_append = " kernel-devsrc openssl-dev alsa-dev"
,我认为它应该提供缺少的 openssl/bio.h
文件,但情况似乎并非如此。
我能够解决此问题的唯一方法是在我的 SDK 计算机上安装 libssl-dev
,但这感觉像是一种解决方法,而不是正确的解决方案。我的期望是,当您从 SDK 获取环境时,它应该为内核提供必要的 headers。
由于 scripts/extract-cert.c
是为主机环境编译的,我宁愿尝试将 TOOLCHAIN_HOST_TASK
变量附加到 " openssl-dev "
。
看到这个问题:
我正在尝试使用通过 bitbake
生成的 Yocto SDK 编译我的内核模块。
SDK 构建没有问题,但是当我尝试 运行 make scripts ARCH=arm64
在我目标的 sysroot 的内核源目录中时,我遇到了一个关于丢失 header 文件的问题:
...
HOSTCC scripts/conmakehash
HOSTCC scripts/sortextable
HOSTCC scripts/asn1_compiler
HOSTCC scripts/extract-cert
scripts/extract-cert.c:21:10: fatal error: openssl/bio.h: No such file or directory
21 | #include <openssl/bio.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.host:107: scripts/extract-cert] Error 1
make: *** [Makefile:1096: scripts] Error 2
我的图像 .bb 文件中有 TOOLCHAIN_TARGET_TASK_append = " kernel-devsrc openssl-dev alsa-dev"
,我认为它应该提供缺少的 openssl/bio.h
文件,但情况似乎并非如此。
我能够解决此问题的唯一方法是在我的 SDK 计算机上安装 libssl-dev
,但这感觉像是一种解决方法,而不是正确的解决方案。我的期望是,当您从 SDK 获取环境时,它应该为内核提供必要的 headers。
由于 scripts/extract-cert.c
是为主机环境编译的,我宁愿尝试将 TOOLCHAIN_HOST_TASK
变量附加到 " openssl-dev "
。
看到这个问题: