標籤:linux軟體包的安裝之----編譯源碼格式的rpm包(尾碼名為.src.rpm的軟體包)
編譯源碼格式的rpm包-----à並製作為二進位格式的rpm包
執行個體
#useradd mockbuild (需要使用mockbuild使用者來編譯)
#rpm –ivh nginx……src.rpm(會在目前的目錄下產生rpmbuild目錄)
#cd rpmbuild;ls(以下是子目錄介紹)
SOURCES:存放的是程式原始碼、補丁、指令碼等。
SPECS:nginx.spec檔案 指示如何解壓,打補丁,如何./configure,make,makeinstall,如何封裝為nginx…..rpm包。
#cd SPECS
#rpmbuild -ba(編譯產生二進位格式的rpm包,並產生源碼格式的rpm包) nginx.spec
# rpmbuild -bb(只編譯產生二進位格式的rpm包) nginx.spec
報錯----排錯:報一堆錯誤,顯示很多依賴的包未安裝,用yum安裝相關包,在執行上一條命令
yum沒找到,找Fedora epel(yum倉庫)配一下,在用yum安裝(mirrors.sohu.com下就有)。
epel都沒有相關程式,rpmfind上搜一下,找出對應平台(i386/x86_64),對應OS(rhel5/rhel6)的相關軟體包,下載下來手動安裝。
再到CD2上去在答案:#yum install gd…rpm Geo…rpm
在執行這條命令:
#cd rpmbuild/SPECS
#rpmbuild -ba(編譯產生二進位格式的rpm包,並產生源碼格式的rpm包) nginx.spec
#cd ..
#ls RPMS/x86_64(這個目錄下會產生二進位的rpm包,用rpm命令或者yum install即可安裝)
#ls SRPMS(此目錄下產生.src.rpm格式為尾碼的源碼rpm包,可以用於你在其他平台/作業系統上安裝nginx程式)
#rpm -ivh RPMS/x86_64/nginx….rpm
#apachectl stop
#service nginx start
#netstat –tunp|grep 80
訪問一下本機試試http://....../
****rpmbuild目錄下可以放多個.src.rpm包產生的二進位包(RPMS目錄),源碼rpm包(SRPMS目錄),程式原始碼檔案在SOURCES目錄下!
本文出自 “就讓我更餓一點” 部落格,請務必保留此出處http://ufirst.blog.51cto.com/7628670/1432605