由于包命名规则以及开发环境的不同,按照常规方法编写spec文件,只能为某一种发行版建包,如果想为多个发行版建包,那么就不得不为每个发行版单独建立OBS项目并分别编写spec文件,这样显然非常麻烦,费时由费力。不过OBS提供了一个发行版RPM宏解决了这个问题,利用这个宏可以编写出一个跨平台的spec文件,可以同时兼容多个linux发行版。
完整的宏定义如下:
由于包命名规则以及开发环境的不同,按照常规方法编写spec文件,只能为某一种发行版建包,如果想为多个发行版建包,那么就不得不为每个发行版单独建立OBS项目并分别编写spec文件,这样显然非常麻烦,费时由费力。不过OBS提供了一个发行版RPM宏解决了这个问题,利用这个宏可以编写出一个跨平台的spec文件,可以同时兼容多个linux发行版。
完整的宏定义如下:
上一篇讲过,除了web页面方式外,还有一个叫osc的工具也可以管理OBS项目,本篇就简要介绍一下osc的使用方法。
根据官方的WIKI介绍,osc是一种用Python语言编写的程序。如果你使用的发行版是openSUSE,那么直接通过”zypper in osc”就可以直接安装,其他的发行版就需要从http://download.opensuse.org/repositories/openSUSE:/Tools/下载安装。
osc的操作和subversion(svn)非常相似,很多参数都是一样,如果你熟悉subversion,那么osc也是很容易的。
Open Build Service构建发行版安装包有两种方法,第一种是通过web页面的控制面板构建,第二种通过opensuse提供的一个osc工具构建,两种方法各有优势,这里先介绍第一种方法。
首先请先看web控制面板的截图: