lenge@lenge-pc:/lenge/linux/kernel_online$ git branch
master
* tag_v4.15
CONFIG is defconfig.
我在编译kernel(v4.15)
时出现错误,如下:
包含在文件中
/lenge/linux/kernel_online/include/linux/types.h:6,
from /lenge/linux/kernel_online/include/linux/page-flags.h:9,
from /lenge/linux/kernel_online/kernel/bounds.c:10:
/lenge/linux/kernel_online/include/uapi/linux/types.h:5:10: fatal
error: asm/types.h: No such file or directory #include <asm/types.h>
^~~~~~~~~~~~~ compilation terminated.
这是我的编译方法:
制作 ARCH=arm64 -C/lenge/linux/kernel_online O=/lenge/linux/kernel_out_aarch64 CROSS_COMPILE=/lenge/gnu/aarch64/bin/aarch64-lenge-linux-gnu- -j4
/p>
我创建符号链接(symbolic link)作为休闲:
ln -s/lenge/linux/kernel_out_aarch64/source/arch/arm64/include/generated/uapi/asm arch/arm64/include/generated/uapi/asm
没关系。
最佳答案
我刚刚在交叉编译到 arm64 时遇到了同样的问题。
我注意到我的源代码树中有一些生成的文件,即使我为我的构建使用输出目录 (O=)。我不确定是我不小心遗漏了一次 O= 还是发生了什么,但这把事情搞砸了。
为了解决这个问题,我在源目录中运行了 make clean(或者 make mrproper,如果你偏执)以删除所有生成的文件。使用 O= 重新运行我的正常 make 命令成功,并且没有在我的源目录中生成生成的文件(如预期的那样)。
关于linux - 在 linux 编译中错过 asm/types.h,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51167618/