【发布时间】:2012-12-12 05:56:27
【问题描述】:
我正在使用 arm-none-eabi-gcc 构建基于 ARM7EJ-S 的应用程序。我以两种方式做到这一点。 方法一。 Eclipse + CodeSourcery 方法二。使用 CodeSourcery + makefile 在命令行下工作
在 Method-1 中,我必须选择一个目标处理器,但可选项目中没有 ARM7EJ-S。 在方法 2 中,我可以使用 -march= 而不是核心名称来指定目标处理器。但是,由于 ARM7EJ-S 的核心架构是 v5TEJ,因此不在候选列表中。但是 v5TE 是可用的。
所以我很困惑... GCC 不支持 ARM7EJ-S 内核吗? 哪位知道这个或者有这方面经验的,请帮帮我!我会非常感激的。
【问题讨论】:
-
注意理解核心和架构的区别。有多个内核共享相同的架构。并且编译器/工具可能允许指定核心名称,因为这可能是您拥有的信息。核心的 arm 文档指定架构,架构文档定义指令集。编译器/工具链将您的代码转换为指令集中的指令。架构是关键。首先关注这一点。