作为优秀的开发人员,我们尽可能保持代码符合标准,以帮助在平台之间移植。但是有哪些工具可以帮助我们在多个平台上以统一的方式构建代码。
* nix系列有make
但Windows需要nmake
。
我读过有关SCons但从未在愤怒中使用它的内容。你最喜欢的构建工具是什么,你为什么觉得它有效并且有任何限制(即平台支持不良等)。
跨平台IDE。
答案 0 :(得分:5)
c / c ++环境的cmake很好。 http://www.cmake.org/
答案 1 :(得分:4)
我个人使用ant,rake和maven2。我最常使用蚂蚁,并且由于以下几个原因而发现它很棒:
因为它是java,它可以在很多平台上运行(不需要更改任何脚本)
构建文件以XML编写,相当容易编写
有很多可用的第三方扩展程序,很容易为
答案 2 :(得分:2)
我们进行极端交叉开发,我们的代码运行在linux,windows ce,windows 2K,nucleus和uCOS-II上。 因为每个环境都使用不同的'make'方法(例如,核心客户,需要我们通过代码warrior GUI进行编译)。
我使用ANT结合perl大约2年,但这导致构建脚本完全不可维护。
现在我们开始使用python,这增加了脚本的可维护性。
底线,我没有找到现成的工具,不得不建立自己的工具。也许,当我有一些时间(2017?)我会打包我的脚本并分发它们....
答案 3 :(得分:1)
您可以在Windows上使用gmake以及使用cygwin / minGW或在Linux上构建您的Windows内容。 http://cdtdoug.blogspot.com/2009/05/mingw-cross-for-linux.html
答案 4 :(得分:0)
如果您在Java世界中,有很多跨平台的工具。 Apache Ant和Maven都是构建工具,可以在任何有Java可用的平台上运行。
Cruise Control(持续集成工具)也适用于Windows和Linux(它也是用Java编写的)。
我对核心工具没有任何实际问题,我有时遇到的唯一问题来自构建过程外部的东西,即发布工件 - 这会因系统而异,所以我发现没有单一的设置方式。
答案 5 :(得分:0)
对于C / C ++开发,我发现bakefile运行良好。相当大的wxWidgets项目是一个跨平台的跨平台实用程序和UI库,用于生成构建文件。
Bakefile是跨平台,交叉编译的本机makefile生成器。它将构建任务的编译器独立描述作为输入,并生成本机makefile(autoconf的Makefile.in,Visual C ++项目,bcc makefile等)。
Bakefile的任务是生成本机makefile,以便人们可以继续使用自己喜欢的工具。还有其他跨平台的make解决方案,但它们要么不是原生的,要么用户使用不熟悉的工具(Boost.Build),要么它们太有限(qmake)。
答案 6 :(得分:0)
有像Opus Make或MKS Toolkit这样的工具可以提供多平台和支持。如果您拥有make脚本的现有代码库,则可以更轻松地迁移到其中一个。我怀疑你可能会在DDJ杂志的广告中寻找类似的工具。
答案 7 :(得分:0)
过去18个月,我们一直在为Linux,Windows和Mac运行Java环境。
我们确实使用了GWT一段时间,这确实导致了我们大量的疼痛。如果你这样摆动,要小心。