【发布时间】:2010-12-22 10:52:56
【问题描述】:
我目前正在管理一些从单一源代码树(Win32、Linux、Verifone CC 终端、MBED 甚至 Nintendo GBA/DS)在多个平台上运行的 C++ 代码。但是,我需要构建一个针对没有 C++ 编译器(仅限 C)的嵌入式平台的应用程序。我记得许多早期的 C++ 编译器只是基于现有 C 编译器的前端(例如 Glockenspiel 使用 MSC)。现在有没有这样的“前端”C++ 编译器可以生成 C 代码。
Tools Platform
----------- ------------
______Visual C++ _____ WIN32
/
/_______MBED (ARM)_______MBED (ARM dev board).
/
/_________GCC (x86)________Linux
/
Source____/___________GCC (ARM)________GBA/DS
\
\__________SDA______________Verifone Verix CC Terminals
\
\________ARM SDT__________Verifine VerixV CC terminals
\
\______????_____________Renases M8/16/32.
\
\____????_____________Z8 family.
最后两个平台我有很好的 C 编译器,但没有 C++。
如您所见,我支持多种平台,并且共享大量库代码(和一些应用程序代码)。
【问题讨论】:
-
有几个好东西要检查,特别是 LLVM 作为从 C++ 生成 C 的一种手段,而且我还没有意识到 GCC 现在支持 Renesas M16/M32(只让 Z8 没有一个 C++ 编译器,老实说,我刚买了一块便宜的开发板来检查它,怀念我的 Z80 出身,虽然它是一个不错的微控制器)。我还想针对旧的 Hypercom 终端(我已经为这些终端编写了很多代码,但我必须有一个单独的源代码树。我知道最新的 Hypercom 是基于 ARM 的,但仍然有数百万个讨厌的 ICE 终端在那里.
标签: c++ c embedded cross-platform