19

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

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

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

4

4 回答 4

11

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

OpenSuse 构建服务

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

GCC 编译农场

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

构建锁

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

巡航控制

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

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

哈德逊

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

运行代码运行

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

CI 特征矩阵

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

于 2008-10-02T06:42:06.827 回答
1

看看OpenSuSE 构建服务,它包括相当广泛的 Linux 发行版(不仅仅是 SuSE/OpenSuSE)。

于 2008-10-02T05:54:39.390 回答
1

从软件的角度来看,还有buildbotsourceforge 项目站点),可用于设置您自己的构建/持续集成服务器。建议并考虑将其用于 gcc 开发(如上面发布的 gcc compile farm wiki 页面所述)。

于 2009-03-14T13:45:18.733 回答
0

如果您打算将您的开源产品商业化,您可以考虑使用我们的 Parabuild。它允许您在多个平台和机器上并行运行一组构建。仅当所有特定于平台的构建都成功时,构建才会成功。

于 2010-03-06T23:33:19.437 回答