我正在为Linux上的Ada开发做一项贸易研究。你有任何好的编译器/操作系统建议吗?
到目前为止,我已经从在CentOS 5.4上运行的AdaCore获得了GNAT,并且我在Rational Apex和Aonix ObjectAda中有许可请求。
这是移植工作。原始代码库是OSF1 4.0d上的Apex 3.0。
还有什么我应该考虑的吗?理想情况下,它将是一个受支持的环境。
答案 0 :(得分:12)
您需要考虑的一个问题是确定被移植的系统在多大程度上利用供应商提供的包来执行其功能。我所见过的较旧的大型系统,尤其是Apex系统,在语言专家的开发时期倾向于认为香草Ada不够好,因此与所有这些供应商提供的软件包相关联。如果这就是你的系统现在所做的,那么它就是在供应商内升级并坚持使用Apex(所有其他事情大致相同)的强烈论据。
每当我完成这些系统的端口时,如果有机会我会尽力撕掉供应商提供的所有东西 - 十分之九用new vana实现替换特定于供应商的东西同样,您不再需要处理特定于编译器的包的怪癖。此外,您还可以提高系统的可移植性和可维护性,使其更好地适应未来的变化。
答案 1 :(得分:5)
总有SPARK,但我相信它是Ada语言的专用/子集版本。您可能需要联系SigAda或Ada usenet小组,看看是否还有其他想法。
老实说,GNAT是一个很棒的工具集。您可以使用GNATBench,Eclipse界面或GPS(轻量级GTK + IDE)与GNAT工具进行交互。
答案 2 :(得分:2)
我所知道的其他编译器是Green Hills AdaMULTI(适用于各种RTOS)和DDC-I's SCORE(也适用于各种RTOS)
答案 3 :(得分:2)