国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 操作系統(tǒng) > 正文

RPM包制作教程

2024-06-28 13:19:12
字體:
供稿:網(wǎng)友
RPM包制作教程

一、RPM介紹

RPM 前是Red Hat Package Manager 的縮寫,本意是Red Hat 軟件包管理,顧名思義是Red Hat 貢獻(xiàn)出來的軟件包管理;現(xiàn)在應(yīng)為RPM Package Manager的縮寫。在Fedora、Redhat、Mandriva、SuSE、YellowDog等主流發(fā)行版本,以及在這些版本基礎(chǔ)上二次開發(fā)出來的發(fā)行版采用; RPM包中除了包括程序運(yùn)行時(shí)所需要的文件,也有其它的文件;一個(gè)RPM包中的應(yīng)用程序,有時(shí)除了自身所帶的附加文件保證其正常以外,還需要其它特定版本文件,這就是軟件包的依賴關(guān)系。

RPM可以讓用戶直接以binary方式安裝軟件包,并且可替用戶查詢是否已經(jīng)安裝了有關(guān)的庫文件;在用RPM刪除程序時(shí),它又會(huì)聰明地詢問用戶是否要?jiǎng)h除有關(guān)的程序。如果使用RPM來升級(jí)軟件,RPM會(huì)保留原先的配置文件,這樣用戶就不用重新配置新的軟件了。RPM保留一個(gè)數(shù)據(jù)庫,這個(gè)數(shù)據(jù)庫中包含了所有的軟件包的資料,通過這個(gè)數(shù)據(jù)庫,用戶可以進(jìn)行軟件包的查詢。RPM雖然是為linux而設(shè)計(jì)的,但是它已經(jīng)移值到SunOS、Solaris、AIX、Irix等其它UNIX系統(tǒng)上了。RPM遵循GPL版權(quán)協(xié)議,用戶可以在符合GPL協(xié)議的條件下自由使用及傳播RPM。

二、RPM包分類

rpm分為兩大類,

1 二進(jìn)制類包,包括rpm安裝包(一般分為i386和x86等幾種)和調(diào)式信息包等2 源碼類包,源碼包和開發(fā)包應(yīng)該歸位此類

它們之間的關(guān)系是,最先我們按rpm打包要求改造軟件項(xiàng)目源碼,當(dāng)符合要求之后就可以使用rpmbuild命令來生成不同的rpm包,同時(shí)生成的包之間版本是直接對(duì)應(yīng)的,比如相同的源碼包將生成完全相同的二進(jìn)制rpm包。當(dāng)你在網(wǎng)上查找rpm包時(shí),一般你可以在RPMS目錄中找到預(yù)編譯的二進(jìn)制包,而源碼包則會(huì)在SRPMS目錄內(nèi)。

我們這里提到的RPM制作就是指改造軟件源代碼使之符合RPM打包要求的過程,這也可以等價(jià)為RPM源碼包的制作過程,因?yàn)楫?dāng)你有了源碼包就可以直接編譯得到二進(jìn)制安裝包和其他任意包。

三、RPM包制作介紹

RPM包的制作,即是RPM源碼包的制作。

RPM包工作的原理

RPM是為解決源碼包不易安裝(需要編譯)和軟件包相互之間依賴(是RPM包管理器可以一定程度解決依賴問題)問題,它通過在探測源碼包在build和install階段的動(dòng)作獲得最終生成的需要安裝的系統(tǒng)里的文件,并記錄下一些必要的操作(比如安裝完成后執(zhí)行某項(xiàng)操作),然后把此組成為一個(gè)整體,當(dāng)在用戶安裝此包時(shí)把前面獲得的所有問題和記錄的所有操作原原本本的作用的實(shí)際系統(tǒng)上。

把一個(gè)普通的源碼打成RPM包,需要下面一些操作

1、先需要對(duì)項(xiàng)目的Makefile作必要的改造以支持RPM打包操作(實(shí)際上此操作不是絕對(duì)的,SPEC文檔和Makefile的是協(xié)調(diào)統(tǒng)一工作的,只要他們之間配合好了其他都無所謂,我們一般只是推薦大家盡量按行業(yè)標(biāo)準(zhǔn)規(guī)范操作而已)2、次是針對(duì)當(dāng)前項(xiàng)目撰寫SPEC文檔,SPEC文檔包括了RPM打包過程的操作內(nèi)容和新生成的RPM包的基本信息等,它的作用對(duì)象是打包程序rpmbuild。

四、RPM包制作過程

方法1:使用rpmbuild來制作rpm包

參考:http://www.CUOXin.com/274914765QQ/p/4737803.html

方法2:使用fpm來制作rpm包

參考:http://www.tuicool.com/articles/Nj6nau

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 依兰县| 乌兰察布市| 枞阳县| 嵊州市| 罗源县| 平乡县| 康马县| 甘南县| 栖霞市| 珠海市| 河间市| 河东区| 五台县| 孝感市| 新乐市| 新河县| 五峰| 阿拉善右旗| 车险| 西乡县| 麻阳| 禹城市| 东阳市| 额敏县| 白水县| 灌阳县| 定南县| 夏河县| 东乡县| 赤峰市| 兴安县| 黔西县| 肥乡县| 突泉县| 黄梅县| 西林县| 通化县| 新河县| 义马市| 隆林| 云阳县|