c++ - 是否有针对不同操作系统检查开源应用程序的构建农场?

我有一个开源应用程序,它可以在 Windows、Linux 和 Macintosh 上运行(它使用 C++ 并使用 gcc 构建)。我只在几种不同风格的 Linux 上测试过它,所以我不知道它是否可以在所有不同的 Linux 版本上编译和运行。有没有一个地方可以让我上传我的代码并在一堆不同的系统上进行测试,比如其他 Linux 风格以及 Solaris、FreeBSD 和其他操作系统?

如果我可以让它直接连接到我的 svn 存储库并获取最新代码,然后通过电子邮件将生成的任何编译错误以及它有问题的操作系统发回给我,那就太好了。

我很高兴知道它可以编译,因为它是一个基于 GUI 的应用程序,所以我不希望它实际运行和测试。

最佳答案

有几个选项,但似乎没有很多(任何?)这样的免费服务,考虑到它需要的工作量和资源,这并不奇怪。 Sourceforge 曾经像您描述的那样经营一个编译农场,但它在一年左右前关闭了。您可能会查看以下内容。如果您倾向于为服务付费或自己推出服务,那么其中一些链接可能会有用。如果您只是在寻找一个涵盖多个平台的免费开源编译/构建农场,那么您似乎很不走运。

OpenSuse Build Service

Ted 提及首先,值得重复 - 目前仅适用于 Linux,但确实支持许多发行版。

GCC Compile Farm

主要专注于测试 GCC 的构建,但也托管一些其他项目,例如 coLinux、BTG B​​itTorrent 客户端、ClamAV 等。可能是您可以利用的东西,尽管我看不到编译场中有哪些操作系统(根据页面注释至少包含 Linux 和 Solaris)。

BuildLocker

BuildLocker 是针对 Java 和 .NET 项目的基于 Web 的持续集成解决方案。 BuildLocker 是一款虚拟专用构建机器,可帮助团队在开发周期的早期发现错误,从而节省时间和金钱。 BuildLocker 管理 ProjectLocker 源代码控制存储库中源代码的计划自动构建。只需 checkin 源代码,计划的构建就会验证代码的完整性。 BuildLocker 甚至可以运行自动化测试,并且可以在测试失败时提醒您。

CruiseControl

CruiseControl 是一个用于持续构建过程的框架。它包括但不限于电子邮件通知插件、Ant 和各种源代码控制工具。提供了一个 Web 界面来查看当前和以前构建的详细信息。

有趣的是,根据播客,CruiseControl 实际上也被 StackOverflow 的开发团队用于自动化构建测试。

Hudson

Hudson 监控重复作业的执行,例如构建软件项目或由 cron 运行的作业。

RunCodeRun

在另一个链接的问题中提到,仅支持 Ruby 项目并且目前处于私有(private)测试阶段。但是,如果您的项目使用 Ruby,则可能值得关注 RunCodeRun。

CI Feature Matrix

有许多可用的持续集成系统。本页试图对尽可能多的人进行公正的比较。

https://stackoverflow.com/questions/160793/

相关文章:

ios - 找不到名为 `ProjectName` 的目标

java - Ant 构建失败 : "Target "build. .xml“不存在”

.net - .NET 构建的 psake 与 rake

build - Monorepo、Travis 和 Matrix 构建 : How do I bui

visual-studio - 有没有办法清除自定义错误的错误列表窗口?

android - 无法执行 aapt(NoSuchElementException at Abst

linux - 如何为 OpenSSL 提供自定义编译器/链接器标志?

java - Ant复制文件而不覆盖

text - 在 Gradle 中正确显示 UTF-8 文本

ios - 深圳ios build报错