【发布时间】:2014-04-10 21:24:31
【问题描述】:
在我安装 arm-none-linux-gnueabi-gcc 编译器集合并为 IGEP 板编译嵌入式应用程序之前的一段时间。我有许多具有双重构建配置的 Eclipse 项目(一个用于基于 UBUNTU 的桌面,另一个用于基于 ARM 的 IGEPv2 板)。
现在,我格式化了我的驱动器(我使用的是 Ubuntu 12.04),我拯救了我的项目,我看到了什么? “arm-none-linux-gnueabi-gcc”不可用?我无法在任何地方下载它。相反,所有链接都通过“Mentor Graphics”转到另一个下载,名为“arm-none-eabi-gcc”。我不知道两者之间的区别。我设置了这个包并更正了我的所有 .../CodeSourcery/... 类型的路径到 /MentorGraphics/...,但是当我编译时出现以下错误:
/home/fercis/MentorGraphics/Sourcery_CodeBench_Lite_for_ARM_EABI/arm-none-eabi/include/termios.h:4:25: 致命错误:sys/termios.h:没有这样的文件或目录
然后我查看了“/home/fercis/MentorGraphics/Sourcery_CodeBench_Lite_for_ARM_EABI/arm-none-eabi/include”下arm编译器集合的包含文件,我看到的是.../include下的termios.h目录,其中仅包含 .../include/sys/termios.h
#ifdef __cplusplus
extern "C" {
#endif
#include <sys/termios.h>
#ifdef __cplusplus
}
#endif
而且,没有“/sys/termios.h”。一定是大错特错!请帮忙?
【问题讨论】:
-
Here is one set。 arm-none-linux-gnueabi-gcc 这个名字本身没有任何意义。这只是一个名字;您需要 IGEP 的交叉编译器。是硬浮动、armv5、armv6 还是 armv7?除了编译器,你还需要安装其他包;就像板上任何版本的标准库和 IGEPv2 Linux 头文件一样。 arm-non-eabi-gcc 通常是一个裸机编译器。您正在查看指导网站的错误部分,如果那是您获得编译器的地方。
-
没有“真正的”arm-none-linux-gnueabi。你可以在很多地方下载它。 none-linux... 可以交叉编译将作为 linux 应用程序运行的二进制文件,例如 none-eabi 更适用于裸机,这取决于您的操作方式,尽管您可以使用任何一种裸机。如果您对 termios.h 感兴趣,您可能想要 linux 的。两者都可以从同一网页上的导师图形中获得,您只需选择正确的图形,他们就会向您发送下载链接。
标签: c++ linux gcc arm cross-compiling