Siza kwenza okokuqala mkhuba de iphakheji ene-RPM, kwaye iya kuba ipakisha injini yomdlalo esifuna ukuwudlala. Ngaphandle kwayo, umdlalo ubungayi kusebenza. |
Yonke into oyidingayo luthando
Iifayile zeSPEC ziyafumaneka kwi Vula Baye basebenza njengempembelelo kum.
Khuphela ikhowudi yemvelaphi
Kuya kufuneka ukhuphele imithombo kwaye uyibeke kwi-SOURCES ifolda.
cd ~/rpmbuild/SOURCES
wget https://bitbucket.org/rude/love/downloads/love-0.7.2-linux-src.tar.gz
Yenza itemplate engenanto
Lo myalelo uya kudala uthando.spec. Kwi-RPM igama leefayile libaluleke kakhulu, kuba igama layo libekwe emgangathweni ukuze ibonise izinto ezininzi, ezifana noyilo, uguqulelo, ukukhululwa, i-distro, njl.
cd ~/rpmbuild/SPECS
rpmdev-newspec uthando
Siza kuvula ifayile entsha eyenziwe ~/rpmbuild/SPECS/love.spec. Uya kubona ukuba yitemplate engenanto. Ndicinga ukuba inxalenye yokuqala iyazichaza. Siza kuyigcwalisa ulwazi olufunyenwe kwiwebhusayithi yayo esemthethweni.
Gcwalisa ithempleyithi kwaye wenze i-SPEC yethu yokuqala
Ndikubonisa indlela ifayile epheleleyo ekhangeleka ngayo ngamagqabantshintshi amaninzi achaza icandelo ngalinye:
# Igama lepakethi.
# Ngokomgangatho, sisusa umlaut kwi "o".
Igama: uthando
# Inguqulelo ngokombhali wokuqala wepakethe (phezulu)
Inguqulelo: 0.7.2
# Inguqulelo yokuPakisha. Ngalo lonke ixesha silungisa iphakheji, songeza enye kuyo
# le nombolo. Ngale ndlela, u-yum uyazi ukuyihlaziya.
Ukukhupha: 1% {? Dist}
# Inkcazo emfutshane yephakheji
Isishwankathelo: I-LÖVE yinjini yomdlalo we-2D yasimahla yokudala umdlalo olula eLua
# Ilayisensi (igama kuphela)
Ilayisensi: ZLIB
# Iwebhusayithi yenkqubo
URL: http://love2d.org/
# I-URL eyona nto ikhutshelwa kuyo imithombo yoqobo, ngokwesiqhelo
# kwi-.tar.gz, .zip, okanye into efanayo yokugcina.
#
# Njengoko ubona, sisebenzisa iimacros ukuze ukuba sihlaziya iphakheji akufuneki siyenze
# lungisa lo mgca. "Igama" kunye "nenguqulelo" iimacros zivela kwintoni
# sibonise ngasentla.
Umthombo0: https://bitbucket.org/rude/%name/downloads/%name-%version-linux-src.tar.gz
# Ukuxhomekeka okufunekayo ukwakha iphakheji.
# Siyakwazi oku kuba bayibeka kwiwebhusayithi yabo.
UkwakhiwaKufuna: i-flac-devel
UkwakhiwaKufuna: uhlobo olukhululekileyo-uphuhliso
I-BuildRequires: i-glibc-devel
I-BuildRequires: libmpg123-devel
I-BuildRequires: libmodplug-devel
I-BuildRequires: i-physfs-devel
UkwakhiwaKufuna: itafile-libGL-devel
I-BuildRequires: i-open-soft-devel
I-BuildRequires: i-DevIL-devel
I-BuildRequires: libvorbis-devel
UkwakhiwaKufuna: I-SDL-uphuhliso
I-BuildRequires: libmng-devel
I-BuildRequires: i-libtiff-devel
UkwakhaKufuna: lua-devel
###########
# Inkcazo yephakheji ende
% inkcazo
I-LÖVE yinjini yomdlalo we-2D emangalisayo ngokungathandabuzekiyo, evumela ukudlala ngokukhawuleza
uphuhliso kunye prototyping in Lua.
Le projekthi ihlala iguquka kwaye utshintsho luza kwaye luhambe, ngamanye amaxesha luqaliswe
ngathi kwaye ngamanye amaxesha ngeengcebiso zabanye. Ukuba unombono wendlela
ukwenza injini umdlalo ngcono, kunqweneleka kakhulu ukuba uqhagamshelane nathi kwaye
sazise ukuba ucinga ntoni.
###########
# Kweli candelo siya kulungiselela imithombo yokuqokelela kunye nokusebenzisa
# iziqwengana ukuba unazo
% yokulungiselela
# Le macro ngumsebenzi othomalalisa imithombo yoqobo.
# Sibonisa iiparamitha ezi-2:
# -q: Imowudi ezolileyo. Musa ukuthumela imiyalezo ngefayile nganye
# ikhutshiwe.
# -n % igama-INTLOKO: Kulo mzekelo, xa ucofa, uvimba weefayili ubizwa
# %igama-INTLOKO. Ukuba asiyibonisanga le nto, inkqubo izakukhangela
# enye ebizwa % igama-% uguqulelo kwaye, ukuba ayifunyenwanga, iyakunika imposiso.
% setup -q -n %name-HEAD
# Njengoko usazi, iifayile ezibhaliweyo ezenziwe kwiWindows ziphela kwi-rn,
# ngelixa ku *nix ziphela ngo-n. Ngoko ke, ukuba ngcono
# ukuhambelana, siya kususa ii-r kuxwebhu olubandakanyiweyo.
sed -i 's/r//' *.txt
###########
# Kweli candelo siza kuqulunqa ikhowudi yomthombo
% yakha
# Oku kuyafana nokwenza `./configure` ngeqela leeparameters ezongezelelweyo
# zisenza kube lula ukuba singazenzi iimpazamo.
% qwalasela
# Yongeza iinketho ezingagqibekanga ukwenza, ukuba zikhona.
# Kwimeko yam oku kuyanda ukuya `kwenza -j3`.
yenza i-%{?_smp_mflags}
###########
# Apha siza kufaka inkqubo ngaphakathi %buildroot.
% faka
# Njengo `yenza ufake` ngeeparamitha ezininzi ezichazwe kwangaphambili.
% make_install
###########
# Apha siphicotha iifayile ezifakiweyo
% iifayile
# Siza kubonisa iifayile ezibhalwe ngalo msebenzi
%doc iyatshintsha.txt license.txt readme.txt
# Okulandelayo kufuneka udwelise zonke iifayile eziza kufakwa.
# Ifayile kuphela eya kuyifaka le /usr/bin/love, okanye yintoni enye:
% _bindir /% igama
###########
# Okokugqibela, kuya kufuneka ugqibezele ilog yokutshintsha iphakheji
% utshintsho
* Ngomhla we-18 Novemba 2011 uJairot Llopis0.7.2-1 @domain.com>
-Ukukhululwa kwasekuqaleni
Sinenyathelo lokugqibela elisele ngaphambi kokudala ipakethe: ukufaka abaxhomekeke. Siza kusebenzisa into eluncedo evela kwiphakheji yum-usetyenziso ukuzifunda ngokuthe ngqo kwifayile esisanda kuyenza.
sudo yum-builddep ~/rpmbuild/SPECS/love.spec
Oko kufanele kwanele. Okulandelayo siya kudala iphakheji.
rpmbuild -ba ~/rpmbuild/SPECS/love.spec
Ulungile! Sele sinayo ipakethe yethu esasazwe kumthi wolawulo. Siza kuba:
- ~/rpmbuild/RPMS/x86_64/love-0.7.2-1.fc16.x86_64.rpm: I-RPM ikulungele ukuhlohla.
- ~/rpmbuild/SRPMS/love-0.7.2-1.fc16.src.rpm: Umthombo we-RPM ulungele ukulungisa iphakheji ngokulula. Ibandakanya ifayile ye-SPEC, ikhowudi yomthombo kunye neepetshi.
Ngaba ungenza isifundo sopakisho lwe-.deb?
Esinjani isifundo esilungileyo, ndingathanda ukuba wenze enye ye.deb
kakhulu kakhulu