Eclipse 的 Keil ARM 编译器

Posted

技术标签:

【中文标题】Eclipse 的 Keil ARM 编译器【英文标题】:Keil ARM compiler for eclipse 【发布时间】:2018-04-23 20:44:54 【问题描述】:

关于软件的价格,我正在尝试“完全免费”。所以我决定在 Eclipse 和 Ubuntu 中为 STM32F0 开发我的代码。

我尝试了将 ARM 工具链添加到 Eclipse 的不同选项。 我发现最好的方法是下载特殊的 Eclipse 版本http://www.openstm32.org。

但它在编译器方面存在一些缺陷。有没有办法向 Eclipse IDE 添加/导入 Keil 编译器

因为相同的代码在 Keil 上运行得非常好。

【问题讨论】:

哪些缺陷? SystemWorkbench for STM32 (OpenSTM) 使用 GCC 作为编译器,每天都经过很好的测试......错误与代码中的编译器特定指令无关?在这种情况下,我建议进行一些搜索以找到它在 GCC 中的等价物 我在另一个问题中描述了缺陷:***.com/questions/47457168/… 【参考方案1】:

我前段时间遇到过类似的问题。 topic on KEIL forum about Linux enviroment

这里有一些旧信息:quite strict answer from KEIL

如果您真的想“完全免费”,我建议您尝试更深入。 手动设置 arm-gcc 编译器、调试器 (openOCD) 并编写自己的自定义 Makefile。 Eclipse 是一个使用外部编译器和调试器的 IDE(因此它几乎是一个文本编辑器),它唯一做的就是自动生成 Makefile-amd,这在某些情况下可能会出现问题。可能不是编译器给您带来问题,而是从 Eclipse 自动生成的 Makefile(错误的链接器、lib 标志等)。

无论如何,这不是简单的方法,但是您可以在 github 上轻松找到许多预制的 Makefile,并且只需最少的自定义,您就可以重新加载您的项目。

是的,用于 ARM 的 KEIL 编译器和 ARM-GCC 之间存在差异。 使用标准库、优化等,这些差异也可能是您项目的问题。

【讨论】:

【参考方案2】:

根据this 线程的消息,keil eclipse 插件已停止使用。您可以尝试该线程中讨论的方法,但我建议寻找替代方法,例如类似于 this 的方法。

【讨论】:

以上是关于Eclipse 的 Keil ARM 编译器的主要内容,如果未能解决你的问题,请参考以下文章

GCC KEIL ARM编译器

keil 编译ARM程序出错

gcc 可以用 keil-arm 编译器编译的目标文件编译吗?

keil arm汇编如何指定一个绝对地址的代码区?

Keil5 STM32 C++开发 ARM V6编译器的使用教程

ARM 编译工具keil 和 IAR 命令行编译和下载