首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >linux编译中缺少asm/types.h

linux编译中缺少asm/types.h
EN

Stack Overflow用户
提问于 2018-07-04 15:01:32
回答 1查看 4.5K关注 0票数 1
代码语言:javascript
运行
复制
lenge@lenge-pc:/lenge/linux/kernel_online$ git branch 
  master  
* tag_v4.15 
CONFIG is defconfig. 

编译kernel(v4.15)时出错,如下所示:

包含在文件中

代码语言:javascript
运行
复制
/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.

这就是我的编译方法:

make ARCH=arm64 -C /lenge/linux/kernel_online O=/lenge/linux/kernel_out_aarch64 CROSS_COMPILE=/lenge/gnu/aarch64/bin/aarch64-lenge-linux-gnu- -j4

我将符号链接创建为fallows:

ln -s /lenge/linux/kernel_out_aarch64/source/arch/arm64/include/generated/uapi/asm arch/arm64/include/generated/uapi/asm

没问题的。

EN

回答 1

Stack Overflow用户

发布于 2019-04-26 22:44:34

我在交叉编译到arm64时也遇到了同样的问题。

我注意到我的源码树中有一些生成的文件,尽管我在构建中使用了输出目录(O=)。我不确定是否有一次我不小心遗漏了O=,或者发生了什么,但这把事情搞得一团糟。

为了解决这个问题,我在源目录中运行make clean (如果您是偏执狂,则运行make mrproper )来删除所有生成的文件。使用O=重新运行正常的make命令成功,并且没有在我的源目录中生成文件(如预期的那样)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51167618

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档