我们有一个 C++ 项目,目前使用 Linux 上的 Make 来构建。我想自动化它类似于 CruiseControl 下的 Java 项目。
1) 有没有类似CruiseControl for C++ 项目的项目?
或者
2) 在 C++ 项目中使用 CruiseControl 是否有很好的“操作方法”?
我们有一个 C++ 项目,目前使用 Linux 上的 Make 来构建。我想自动化它类似于 CruiseControl 下的 Java 项目。
1) 有没有类似CruiseControl for C++ 项目的项目?
或者
2) 在 C++ 项目中使用 CruiseControl 是否有很好的“操作方法”?
我一直在寻找在 Linux 上为 C++ 项目设置 CruiseControl 但遇到了Hudson。它有一个文件/一个命令行设置,您可以启动并运行。管理访问是通过漂亮的 Web 界面进行的。我强烈推荐它。
与 CC 相比,Hudson 似乎更易于设置和管理,而且您可以通过插件访问构建静态、错误/警告(放入目录并且它们可用),并且您可以将其设置为在构建失败时自动发送电子邮件。
我创建了为每个项目目录调用 make 的 shell 脚本。我指示哈德森运行该脚本。构建是通过类似设置的 cron 设置的 - 通过 Web 界面设置。我让它每 30 分钟检查一次代码更改,并从 perforce 和重新编译中获取构建。
如果您不确定,请尝试一下。只需几分钟即可启动并运行。我下载它是因为我想看看我们当前的构建设置有什么可能,而且我从未回头,它已经运行了将近一年,没有任何问题。
我不知道 CruiseControl,因为我们使用的是 TeamCity,但 CruiseControl 应该能够执行命令行构建,即只需调用 Make。这没什么不好。在 TeamCity 中,甚至可以轻松地将进度通知添加到 make 文件(只是以特定格式输出),因此它与“原生”项目并没有太大区别。我不知道 CruiseControl 在这方面能走多远。
我们有一个使用 CMake 构建的大型 C++ 项目,在命令行上运行,它甚至可以正确报告单元测试结果(使用 Boost::Test)。
哦,如果 CruiseControl 不支持命令行运行器或 Java 以外的项目类型,您应该看看TeamCity作为替代品。
我们正在运行Hudson来构建 C++ 和 Java 代码的混合体,它运行良好。与 CruiseControl 相比的一个优势是 Hudson 具有完整的 Web 界面,因此您永远不必手动编辑任何 XML 文件。
我们正在使用Cruisecontrol来构建我们的 C++ 和 Java 项目。我们的 C++ 项目使用SCons而不是 make,我们只需通过exec Ant 任务从 Cruisecontrol Ant脚本调用 scons。
我们将 CruiseControl 用于 C++ 项目。我们只是使用exec在 Ant 脚本中执行 devenv.com来构建解决方案。