Paketimet RPM. Pjesa 3: paketimi LÖVE

Ne do të kryejmë të parën praktikë de paketë me RPM, dhe do të jetë paketimi i motorit të lojës që duam të luajmë. Pa të, loja nuk do të funksiononte.

E vetmja gjë që ju nevojitet është LÖVE

E SHIKON është një motor për lojërat 2D të shkruara në Lua, Dhe Jo Tetris 2 është një lojë e bërë për motorin në fjalë. Për shkak të varësive të bazuara në libmpg123 Ata nuk janë në depot zyrtare, kështu që është ideal për tutorialin.

Skedarët SPEC të disponueshëm në openSUSE ato kanë shërbyer si frymëzim.

Shkarkoni kodin burim

Ju do të duhet të shkarkoni burimet dhe t'i vendosni ato në dosjen SOURCES.

cd ~ / rpmbuild / BURIMET
wget https://bitbucket.org/rude/love/downloads/love-0.7.2-linux-src.tar.gz

Krijoni një model bosh të specifikimeve

Kjo komandë do të krijojë dashuri.sipec. Në RPM, emri i skedarëve është mjaft i rëndësishëm, pasi që nomenklatura e saj është e standardizuar në mënyrë që të tregojë shumë gjëra, si arkitektura e tij, versioni, lëshimi, shpërndarja, etj.

cd ~ / rpmbuild / SPECS
dashuria rpmdev-newspec

Ne do të hapim skedarin e sapo krijuar ~ / rpmbuild / SPECS / love.spec. Do të shihni që është një model i zbrazët. Pjesa e parë mendoj se është mjaft vetëshpjeguese. Do ta mbushim me informacionin e gjetur në faqen e tij zyrtare.

Plotësoni modelin dhe krijoni SPEC-in tonë të parë

Vura si duket skedari i plotë me shumë komente që shpjegojnë secilën pjesë:

# Emri i paketës.
# Sipas standardit, ne heqim umlaut në "o".
Emri: dashuri

# Version sipas autorit origjinal të paketës (në rrjedhën e sipërme)
Versioni: 0.7.2

# Versioni i paketimit. Sa herë që modifikojmë paketën, i shtojmë një
# ky numër. Në këtë mënyrë yum di ta azhurnojë.
Lirimi: 1% {? Dist}

# Përshkrimi i shkurtër i paketës
Përmbledhje: LÖVE është një motor lojë falas 2D për krijimin e lehtë të lojës në Lua


# Licencë (vetëm emri)
Licenca: ZLIB

# Uebfaqja e programit
URL: http://love2d.org/

# URL e saktë nga e cila shkarkohen burimet origjinale, zakonisht
# në një arkiv .tar.gz, .zip, apo diçka të ngjashme.
#
# Siç mund ta shikoni, ne përdorim makrot në mënyrë që nëse azhurnojmë paketën të mos ketë
# modifikoni këtë rresht. Makrot "emri" dhe "versioni" vijnë nga çfarë
# ne kemi treguar më lart.
Burimi0: https://bitbucket.org/rude/%name/downloads/%name-%version-linux-src.tar.gz


# Varësitë e nevojshme për të ndërtuar paketën.
# Ne e dimë këtë sepse ai e vë atë në faqen e tij të internetit.
Kërkesat e ndërtimit: zhvillimi i përpiktë
Kërkesat e ndërtimit: lloji i lirë-zhvillimi
Kërkesat e ndërtimit: glibc-zhvillo
Kërkesat e ndërtimit: libmpg123-zhvillo
Kërkesat e ndërtimit: libmodplug-zhvillo
Kërkesat e ndërtimit: zhvillime fizike
Kërkesat e ndërtimit: mesa-libGL-zhvillim
Kërkesat e ndërtimit: zhvillim i hapur-i butë
Kërkesat e Ndërtimit: Zhvillimi i Djallit
NdihmëKërkesat: libvorbis-zhvillo
Kërkesat e ndërtimit: Zhvillimi i SDL
Kërkesat e ndërtimit: libmng-zhvillo
NdihmëKërkesat: libtiff-devel
NdërtimiKërkon: lua-zhvillo


###########
# Përshkrimi i paketës së gjatë
% përshkrim
LÖVE është një motor lojë pa dyshim i mrekullueshëm 2D, i cili lejon lojë të shpejtë
zhvillimin dhe prototipizimin në Lua.

Ky projekt është në zhvillim e sipër dhe ndryshimet vijnë e vijnë, nganjëherë të iniciuara
nga ne dhe nganjëherë nga rekomandimet e të tjerëve. Nëse keni një ide se si
për ta bërë motorin e lojës më të mirë, dëshirohet shumë që të na kontaktoni dhe
na tregoni se çfarë mendoni.


###########
# Në këtë pjesë do të përgatisim burimet për përpilimin dhe zbatimin e
# arna nëse keni ndonjë
% parapërgatitje

# Kjo makro është një funksion që dekompreson burimet origjinale.
# Ne tregojmë 2 parametra:
# -q: Modaliteti i qetë. Mos dërgoni mesazhe për secilën skedar
# i zbërthyer.
# -n% name-HEAD: Në këtë rast kur hapet zinxhiri krijohet një drejtori e quajtur
#% name-HEAD. Nëse nuk do ta tregonim këtë, programi do të kërkonte
# një e quajtur% name-% version dhe mos gjetja e tij do të jepte një gabim.
% setup -q -n% name-HEAD

# Siç e dini, skedarët me tekst të krijuar në Windows përfundojnë në rn,
# ndërsa në * nix ato mbarojnë vetëm në n. Pra, për të mirë
# pajtueshmëri, ne do të heqim r-të në dokumentacionin e përfshirë.
sed -i 's / r //' * .txt


###########
# Në këtë pjesë do të përpilojmë kodin burimor
% ndërtojnë

# Kjo është njësoj si të bësh `. / Konfiguro` me një bandë shtesë të parametrave që
# na e bëjnë të lehtë të mos bëjmë gabime.
konfiguroni

# Shtoni opsionet e paracaktuara për të bërë, nëse ka.
# Në rastin tim, kjo zgjerohet në `make -j3`.
bëj% {? _ smp_mflags}


###########
# Këtu do të instalojmë programin brenda% buildroot.
% e instaluar

# Si `instalo` me shumë parametra të paracaktuar të kërkuar.
% bëj_instalo


###########
# Këtu ne auditojmë skedarët e instaluar
% skedarë

# Ne do të tregojmë skedarët që janë dokumentacion me këtë funksion
% doc changes.txt licencë.txt readme.txt

# Tjetra duhet të renditni të gjitha skedarët që do të instalohen.
# Skedari i vetëm që do ta instalojë këtë është / usr / bin / love, ose çfarë është e njëjta:
% _bindir /% name


###########
# Më në fund, duhet të plotësoni regjistrin e ndryshimit të paketës
% ndryshim
* Fri 18 Nëntor 2011 Jairot Llopis 0.7.2-1
- Lirimi fillestar
@ domain.com>

Ne kemi një hap të fundit para krijimit të paketës: instalimin e varësive. Ne do të përdorim një pajisje nga paketa yum-utils për t'i lexuar ato direkt nga skedari që sapo krijuam.

sudo yum-builddep / rpmbuild / SPECS / love.spec

Kjo duhet të mjaftojë. Tjetra ne do të krijojmë paketën.

rpmbuild -ba / rpmbuild / SPECS / dashuri. spec

Gati! Ne tashmë kemi paketën tonë të shpërndarë në pemën e direktorive. Ne do të kemi:

  • ~/rpmbuild/RPMS/x86_64/love-0.7.2-1.fc16.x86_64.rpm: RPM gati për tu instaluar.
  • ~ / rpmbuild / SRPMS / love-0.7.2-1.fc16.src.rpm: Burimi RPM i gatshëm për të modifikuar paketën me lehtësi. Ai përfshin skedarin SPEC, kodin burimor dhe arnimet.
Sidoqoftë, të kesh motorin e lojës nuk do të na bëjë asgjë më vete. Në këstin tjetër do të shohim se si ndërtoni vetë lojën.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   shembull pëlhure dijo

    ju mund të bëni një udhëzues për paketimin .deb

  2.   Lucas Matías Gomez dijo

    Çfarë një mësim i mirë, unë gjithashtu do të doja që ju të bëni një për .deb

  3.   portier dijo

    shumë mirë