【发布时间】:2015-01-22 15:49:43
【问题描述】:
我正在研究运行 Linux 的基于 ARM cortex A7 的嵌入式系统。我正在寻找尺寸紧凑且可靠的 c/c++ 编译器(因为 GCC 大约为 100 mb)。我入围了一些 SDCC、TCC、OTCC、Digital Mars、NWCC、LCC、Small C、便携式 C 编译器。
我想知道编译器是否依赖于操作系统或硬件,以及我应该如何着手开始精简列表。我不是专家,我正在学习 Linux 系统和嵌入式环境。如果您认为我提出了错误的问题或方向错误,请告诉我。
谢谢你
注意
我的 linux(笔记本电脑)系统上已经有交叉编译器。我只使用它来编译要加载的程序。但是嵌入式系统应该能够加载我们设计的特定语言,我希望将该语言转换为等效的 C 代码并运行它。我尝试用 c 编写自己的解释器,它接受其他语言的代码并解析并执行,但速度有点慢,我在(直接用)C 中尝试了相同的指令,结果令人满意。
编辑: 我最终在我的系统上使用 g++ 来编译代码,因为系统的主要功能是使用生成的代码。
【问题讨论】:
-
为什么需要小型编译器?您是否打算在嵌入式目标本身上运行它?为什么你的嵌入式系统需要编译东西?
-
嵌入式系统应该能够加载我们设计的特定语言,我希望将该语言转换为等效的 C 代码。我尝试编写自己的解释器,但速度有点慢,我在 C 中尝试了相同的指令,结果令人满意。这就是为什么。
-
也许您最好使用专为嵌入而设计的轻量级脚本语言,例如 LUA?
-
我尝试了 LUA,结果令人满意,但我计划在做出决定之前考虑并比较所有可能的选项。