KDevelop 和 openSUSE Build Service
2008年6月4日 | 新闻团队 | 无许可
为多个发行版构建软件包可能是一件非常痛苦的事情——这就是我们提供 openSUSE 构建服务 的原因。构建服务众多功能之一就是能够为许多发行版创建软件包,包括 openSUSE、SUSE Linux Enterprise、Debian、Fedora、CentOS 和 Ubuntu。KDevelop 是充分利用构建服务的一个项目。我们与 KDevelop 开发者 Amilcar do Carmo Lucas 谈了谈 KDevelop 项目如何使用构建服务。
什么是 KDevelop?KDevelop 是一个基于插件的集成开发环境 (IDE),自 1998 年以来一直在开发中。它支持 12 种编程语言、五种构建工具、11 种文档格式、四种版本控制系统、五种开发工具包以及数十种其他便捷工具。
它的绝大多数功能都面向 C++ 开发:代码补全、快速代码导航、类浏览、依赖关系图、文档查找、集成调试器等等。它使用 Qt/KDE 库以 C++ 编写,可以在任何 Linux、MacOS、FreeBSD、Solaris 甚至 Microsoft Windows 计算机上运行。
openSUSE 每周新闻: 您在 KDevelop 开发中扮演什么角色?
Amilcar do Carmo Lucas: 我于 2003 年加入开发团队,现在我仍然提供一些补丁,但主要负责网站管理员、bug 管理员、支持和打包人员的工作。
openSUSE 每周新闻: 您是如何开始使用构建服务的?
Amilcar do Carmo Lucas: 我从 7.1 版本开始就是 SUSE 用户,但这并不是我决定测试它的原因。主要原因是它是免费的,任何人都可以加入并使用它,并且它可以为多个发行版提供软件包。我于 2007 年 1 月开始使用它,就像其他人一样,我最初只构建 SUSE RPM 包。
openSUSE 每周新闻: 构建服务对您的项目有什么用处?
Amilcar do Carmo Lucas: 它允许我们以非常短的时间和非常少的精力为许多发行版交付 KDevelop 二进制软件包。我们可以每两周构建一次,或者在重要的 bug 修复之后构建一次。而且好的一点是,我们只需要上传一个 .tar.bz2 文件,编辑一个 changelog 文件,然后等待一个小时;之后所有二进制文件都已完成并通过所有镜像分发到世界各地。
openSUSE 每周新闻: 您正在使用构建服务为哪些发行版构建软件包?
Amilcar do Carmo Lucas: 我们为服务支持的所有发行版构建软件包,除了 SUSE Linux Enterprise 9 和 RedHat Enterprise 4,因为它们不提供 KDevelop 所需的依赖项。这意味着使用一个通用的源代码和一个通用的 changelog 文件构建 34 个不同的二进制软件包。
openSUSE 每周新闻: 您对使用该服务开发人员有什么建议吗?有什么可以使其更容易,或者需要注意的事项吗?
Amilcar do Carmo Lucas: 是的,我有一些建议。我使用 openSUSE 提供的 Web 前端超过一年,然后才开始使用“osc”本地命令行工具。我建议人们从构建服务开始时也这样做,GUI 界面易于使用并提供所有基本工具,因此一开始不需要学习和使用命令行。
您的第一步应该是导入一个现有的 Spec (.spec) 文件,并将其适配到您想要编译的源代码,这可以是来自 CentOS、Fedora RedHat、SUSE 等的任何文件,然后开始添加 %ifs,直到使其适用于其他发行版。不要从头开始,否则学习所有 .spec 文件命令将会很困难。
请查看:构建服务/跨发行版软件包操作指南 以获取灵感。
openSUSE 每周新闻: 您希望构建服务在哪些方面得到改进?
Amilcar do Carmo Lucas: 是的。在 IRC 频道 #opensuse-buildservice 中,您总是可以找到有人为您指明方向,尤其是 darix、adrianS 和 mls。但是,在邮件列表中,我只收到了大约一半邮件的回复,因此总体体验良好,但邮件支持可以更好。
openSUSE 每周新闻: 您还有什么想对构建服务说的吗?
Amilcar do Carmo Lucas: 是的。我想向所有希望覆盖更广泛受众的开发者推荐它。
过去,打包工作完全由发行版完成,开发者只提供 .tar.bz2 文件或 VCS 读取权限。构建服务允许开发者参与打包和分发,而无需构建农场或安装不同的发行版。而且它非常易于使用,您只需要一个浏览器和您的源代码。
openSUSE 每周新闻: 感谢您抽出时间与我们交谈!
如果您正在为您的项目软件包使用 openSUSE 构建服务,请通过 info@opensuse.org 与我们联系。我们很乐意了解情况。