【发布时间】:2019-01-28 23:23:25
【问题描述】:
我正在尝试为 ARM a8 处理器进行交叉编译。我正在将代码库移动到新系统,因此应该使用与原始系统相同的编译器和 makefile 来安装它。
我知道我正在使用 arm-linux-gnueabihf-gcc 编译器。
我已经安装了以下软件包:
> sudo apt install gcc-arm-linux-gnueabihf
> sudo apt install binutils-arm-linux-gnueabi
当我编译以下代码块时:
#include <stdio.h>
// filename: simple.c
int main(void)
{
printf("I'm printing!\n");
return;
}
使用这个命令:
> arm-linux-gnueabihf-gcc simple.c
我希望它在这一步编译。我反而得到:
In file included from simple.c:1:0:
/usr/include/stdio.h:27:10: fatal error: bits/libc-header-start.h: No such file or directory
#include <bits/libc-header-start.h>
^~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
任何帮助将不胜感激!谢谢!
【问题讨论】:
-
我猜你必须安装
libc6库,比如here。apt-get install libc6-armel-cross libc6-dev-armel-cross等 -
我添加了那些说明中指定的库。与我的问题中列出的结果相同。
-
你最后找到解决办法了吗?我也面临同样的问题...
标签: linux arm embedded cross-compiling