首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux/编译器-gcc5.h:没有这样的文件或目录

Linux/编译器-gcc5.h:没有这样的文件或目录
EN

Unix & Linux用户
提问于 2016-04-10 16:14:04
回答 4查看 24.4K关注 0票数 1

我在编译内核调度程序以进行测试时遇到了问题。

编译错误

代码语言:javascript
复制
 linux-2.6.32-rc3/include/linux/compiler-gcc.h:86:30: fatal error: linux/compiler-gcc5.h: No such file or directory

因为内核太老了,我会得到这个错误吗?

内核

代码语言:javascript
复制
uname -r

4.1.0-3-generic

gcc

代码语言:javascript
复制
gcc --version

gcc-5.real (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010

因此,如果这是编译错误的原因--有哪些解决方案可用?例如,我应该更新内核吗?我该如何做呢?还是回到gcc的早期版本?其他建议?

EN

回答 4

Unix & Linux用户

发布于 2016-04-11 09:56:52

任何大于3.18的内核都不会使用gcc 5进行编译。请使用旧的编译器。

票数 4
EN

Unix & Linux用户

发布于 2017-09-14 17:36:57

可以安装gcc-4.9来编译3.xx内核。

但接下来的问题是:“如何切换gcc-4.9的内核编译?”

相反,更简单的答案就在这里 -只需将丢失的文件下载到include/linux文件夹

不幸的是,gcc5根本不喜欢“内联”构造,所以在进行任何编译之前,您必须对所有内核源代码继续使用grep -sRl "extern inline" .|xargs sed -i -e "s/extern inline/inline/g"

票数 1
EN

Unix & Linux用户

发布于 2016-04-10 16:21:35

您没有内核源代码。编译器正在查找该头文件。

这个链接将为您提供一个内核源代码树的版本,它应该与您正在寻找的内容非常相似。

https://cdn.kernel.org/pub/linux/kernel/v2.6/longterm/v2.6.32/linux-2.6.32.71.tar.xz

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

https://unix.stackexchange.com/questions/275515

复制
相关文章

相似问题

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