编译内核时出现fatal error: linux/compiler-gcc7.h: No such file or directory(已解决)

强颜欢笑 提交于 2019-11-26 03:28:29

编译内核时出现fatal error: linux/compiler-gcc7.h: No such file or directory(已解决)

##linux内核编译时出错
在这里插入图片描述
最近编译linux内核时出现了问题,网上找了好多办法都没解决,最后才找到一个比较好一点的方法。

网上的方法大多数都是把/usr/src/… linux内核中的compile-gcc.h加入到需要编译的内核的位置。然并卵,又出现了新的错误,还是没解决。

解决办法:因为网上没有gcc7.h文件,所以我直接更改了编译器的版本,改成 gcc-4.7-arm-linux-gnueabi,然后编译就能通过了。
输入命令如下:
先卸载gcc7:
sudo apt-get remove gcc-arm-linux-gnueabi
清理剩余数据:
sudo apt autoremove

安装gcc4.7:
sudo apt-get install gcc-4.7-arm-linux-gnueabi

安装好交叉编译链后还需要做如下处理,即创建链接(为什么创建,可以了解下编译脚本):

sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-4.7 /usr/bin/arm-linux-gnueabi-gcc

sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-ar-4.7 /usr/bin/arm-linux-gnueabi-gcc-ar

sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-nm-4.7 /usr/bin/arm-linux-gnueabi-gcc-nm

sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-ranlib-4.7 /usr/bin/arm-linux-gnueabi-gcc-ranlib

sudo ln -s /usr/bin/arm-linux-gnueabi-cpp-4.7 /usr/bin/arm-linux-gnueabi-cpp

sudo ln -s /usr/bin/arm-linux-gnueabi-gcov-4.7 /usr/bin/arm-linux-gnueabi-gcov

即把所有尾部有4.7版本号的链接为没有的。

之后就能编译了,下面是我编译成功的结果:
在这里插入图片描述
参考文章:
编译linux3.16内核心得
https://www.it610.com/article/3640798.htm
安装quem https://jingyan.baidu.com/article/f00622281253e8fbd3f0c814.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!