Az elsőt mi hajtjuk végre gyakorlat de csomag RPM-mel, és ez a játék motorját fogja csomagolni, amelyet játszani akarunk. Enélkül a játék nem működne. |
Csak a szeretet az amire szükséged van
SPEC fájlok itt érhetők el openSUSE inspirációként szolgáltak.
Töltse le a forráskódot
Le kell töltenie a forrásokat, és be kell helyeznie őket a FORRÁSOK mappába.
cd ~ / rpmbuild / FORRÁSOK
wget https://bitbucket.org/rude/love/downloads/love-0.7.2-linux-src.tar.gz
Hozzon létre egy üres specifikációs sablont
Ez a parancs létrehozza szerelem.spec. Az RPM-ben a fájlok neve elég fontos, mivel nómenklatúrája egységes így sok mindent jelez, például az architektúráját, verzióját, kiadását, terjesztését stb.
cd ~ / rpmbuild / SPECS
rpmdev-újság szerelem
Megnyitjuk az újonnan létrehozott fájlt ~ / rpmbuild / SPECS / love.spec. Látni fogja, hogy ez egy üres sablon. Az első rész szerintem eléggé magától értetődő. Megtöltjük a hivatalos oldalán található információk.
Töltse ki a sablont, és hozza létre az első SPEC-t
Feltettem, hogyan néz ki a teljes fájl, sok megjegyzéssel, amelyek megmagyarázzák az egyes szakaszokat:
# A csomag neve.
# A szabvány szerint eltávolítjuk az umlautot az "o" -ra.
Név: szerelem
# A csomag eredeti szerzőjének megfelelő verzió (upstream)
Változat: 0.7.2
# Csomagolási verzió. Minden alkalommal, amikor módosítjuk a csomagot, hozzáadunk egyet ehhez
# ez a szám. Így tudod frissíteni.
Kiadás: 1% {? Dist}
# A csomag rövid leírása
Összegzés: A LÖVE egy ingyenes 2D-s játékmotor a játék egyszerű létrehozásához Lua-ban
# Engedély (csak a név)
Engedély: ZLIB
# A program weboldala
URL: http://love2d.org/
# Pontos URL, ahonnan az eredeti források letölthetők, általában
# egy archívumban .tar.gz, .zip vagy valami hasonló.
#
# Amint láthatja, makrókat használunk, így ha frissítjük a csomagot, akkor nem kell
# módosítsa ezt a sort. A "név" és a "verzió" makrók miből származnak
# fentebb jeleztük.
Source0: https://bitbucket.org/rude/%name/downloads/%name-%version-linux-src.tar.gz
# A csomag elkészítéséhez szükséges függőségek.
# Ezt azért tudjuk, mert felteszi a weboldalára.
BuildRequires: flac-devel
BuildRequires: freetype-devel
BuildRequires: glibc-devel
BuildRequires: libmpg123-devel
BuildRequires: libmodplug-devel
BuildRequires: physfs-devel
BuildRequires: mesa-libGL-devel
BuildRequires: openal-soft-devel
BuildRequires: DevIL-devel
BuildRequires: libvorbis-devel
BuildRequires: SDL-devel
BuildRequires: libmng-devel
BuildRequires: libtiff-devel
BuildRequires: lua-devel
##########
# Hosszú csomag leírása
% leírás
A LÖVE egy vitathatatlanul fantasztikus 2D játékmotor, amely gyors játékot tesz lehetővé
fejlesztés és prototípus készítés Lua-ban.
Ez a projekt folyamatosan fejlődik, és változások jönnek és mennek, néha megindulnak
általunk és néha mások ajánlásaival. Ha van ötlete, hogyan
a játék motorjának jobbá tétele érdekében nagyon kívánatos, hogy vegye fel velünk a kapcsolatot és
tudassa velünk, mit gondol.
##########
# Ebben a részben elkészítjük a forrásokat a
# javítás, ha van ilyen
% prep
# Ez a makró egy olyan funkció, amely kibontja az eredeti forrásokat.
# 2 paramétert jelölünk meg:
# -q: Csendes mód. Ne küldjön üzeneteket minden fájlhoz
# kibontva.
# -n% name-HEAD: Ebben az esetben a könyvtár kibontásakor létrejön a neve
#% name-HEAD. Ha ezt nem jelezzük, akkor a program keresni fog
# egy hívta a% name-% verziót, és ha nem találja meg, hibát okoz.
% setup -q -n% name-HEAD
# Mint tudják, a Windows-ban létrehozott szövegfájlok végződése rn,
# míg * nix-ben csak n-vel végződnek. Tehát jobbra
# kompatibilitás, eltávolítjuk az r-eket a mellékelt dokumentációból.
sed -i 's / r //' * .txt
##########
# Ebben a részben összeállítjuk a forráskódot
% épít
# Ez megegyezik a `. / Konfigurálás` elvégzésével egy csomó extra paraméterrel, amelyek
# megkönnyítsük, hogy ne hibázzunk.
% Beállítás
# Adja meg az alapértelmezett beállításokat, ha van ilyen.
# Az én esetemben ez kibővül a `make -j3'-ra.
% {? _ smp_mflags}
##########
# Itt telepítjük a programot a% buildroot belsejébe.
% telepítés
# Mint a "make install", sok előre definiált paraméterrel.
% make_install
##########
# Itt ellenőrizzük a telepített fájlokat
% fájl
# Megjelöljük azokat a fájlokat, amelyek dokumentálva vannak ezzel a funkcióval
% doc changes.txt license.txt readme.txt
# Ezután fel kell sorolnia az összes telepítendő fájlt.
# Az egyetlen fájl, amely ezt telepíti, a / usr / bin / love, vagy ami ugyanaz:
% _bindir /% név
##########
# Végül ki kell töltenie a csomagváltoztatási naplót
% változási napló
* 18. november 2011., péntek, Jairot Llopis0.7.2-1 @ domain.com>
- Első kiadás
A csomag létrehozása előtt még egy utolsó lépésünk van: a függőségek telepítése. A csomagból származó segédprogramot fogunk használni yum-utils hogy közvetlenül az imént létrehozott fájlból olvassuk el őket.
sudo yum-builddep ~ / rpmbuild / SPECS / love.spec
Ennek elégnek kell lennie. Ezután elkészítjük a csomagot.
rpmbuild -ba ~ / rpmbuild / SPECS / love.spec
Kész! Csomagunkat már elosztottuk a könyvtárfában. Nekünk lesz:
- ~/rpmbuild/RPMS/x86_64/love-0.7.2-1.fc16.x86_64.rpm: RPM telepítésre kész.
- ~ / rpmbuild / SRPMS / love-0.7.2-1.fc16.src.rpm: A forrás RPM készen áll a csomag könnyedén történő módosítására. Tartalmazza a SPEC fájlt, a forráskódot és a javításokat.
csinálhat egy oktatóanyagot a .deb csomagolásához
Milyen jó oktatóanyag, azt is szeretném, ha elkészítenéd a .deb fájlra
muy Bueno