Instalační balíčky: Porovnání verzí

Z Wikiknih
Smazaný obsah Přidaný obsah
Woodcraft (diskuse | příspěvky)
Bez shrnutí editace
 
Řádek 51: Řádek 51:


== deb ==
== deb ==

Relativně nejsnazší cestou jak vytvořit vlastní binární balíček je použití zdrojového balíčku dodávaného v distribuci. Postup se pokusím rozdělit do několika kroků:

:* Nejprve jako root musíte doinstalovat balíky nutné pro splnění požadovaných závislostí:

<pre>
#apt-get build-dep <kompilovaná aplikace>
</pre>

:* Potom už jako uživatel stáhnete a rozbalíte zdroj aplikace, co máte v úmyslu kompilovat. Že musíte mít nastavený v souboru ''<code>/etc/apt/sources.list</code>'' také zdroje ke zdrojákům , snad není nutno příliš zdůrazňovat.

<pre>
#apt-get source <kompilovaná aplikace>
</pre>

:: APT stáhne příslušný zdrojový balíček a rozbalí do aktuální pozice.

:* Skočíte do vytvořeného podadresáře a spustíte proces sestavení balíku příkazem

<pre>
#dpkg-buildpackage -rfakeroot
</pre>

: Tento příkaz má řadu dalších parametrů, jimiž můžete kompilaci balíku řídit. Kupř. mě odmítl kompilaci provést, dokud jsem neurčil parametrem '''-m''' budoucího vlastníka (sebe)

:* Pokud je proces sestavení přerušen, je nutné analyzovat příčinu a pokusit se ji odstranit. Nejčastější příčiny..

::* nesplněné závislosti (viz první bod)

::* zastaralá verze některého z nezbytných programů (nejprve zkusit aktualizovat systém, popřípadě rekompilovat nejprve vyžadovaný program)

:* Proběhne-li kompilace v pořádku, naleznete v původním umístění zkompilovaný binární balíček, který můžete přes '''dpkg''' nainstalovat.


Balíček můžete také kompilovat ihned po stažení, pokud přidáte při stahování zdroje parametr '''-b''' Pak je však nutné spouštět příkaz jako root


== rpm ==
== rpm ==

Verze z 22. 3. 2005, 15:25

Pro usnadnění správy software v linuxových distribucích byly vyvinuty tzv. balíčkovací systémy

Schéma balíků

Instalační balíčky mohou být dvou typů:

  • zdrojové - obsahující zdrojový kód aplikace + soubory obsahující makra, nezbytná pro jeho kompilaci a instalaci
  • binární - obsahující již zkopilované binární soubory a další potřebné soubory + hlavičkové soubory nezbytné pro instalaci

deb

Deb balíček je archív vytvořený archivačním programem ar , který obsahuje dva tarballové archívy.

Jeden z nich obsahuje informace o balíku a druhý vlastní binární data, která se při instalaci kopírují do systému

rpm

rpm balíček je binární archív, který je tvořen hlavičkou a vloženým cpio archívem, který obsahuje vlastní instalované soubory - buď archív se zdrojovým kódem a tzv. spec souborem, nebo zkompilované soubory aplikace .

Tento archvív lze z rpm balíku extrahovat pomocí utility rpm2cpio

Podle specifikace je rozhodující pro identifikaci rpm balíčku prvních 8 bajtů.

  • první čtyři bajty (řetězec = edab eedb) tvoří tzv. magické číslo podle kterého program file pozná že jde o RPM balíček
  • druhé dva bajty určují použitou verzi rpm ( řetězec = 0300 )
  • zbývající dva určují zda jde o balíček binární (řetězec = 0000) nebo zdrojový (řetězec = 0001)

další bajty pak nesou informace o architektuře pro níž je balíček určen, digitální podpis, atd..

http://www.rpm.org/max-rpm/index.html

tgz

Nástroje pro správu balíků

deb

Základním nástrojem pro správu deb balíků je dpkg , ovšem časteji používaným, komplexnějším nástrojem je apt

rpm

Základním nástrojem pro správu rpm balíků je rpm , lze však použít i apt pro rpm (původně vyvinutý pro distribuci Conectiva, kterou nedávno koupil Mandrake), nebo urpmi (nástroj z distribuce Mandrake) či yum (nástroj z distribuce Fedora)

tgz

Tvorba balíku

Existuje několik utilit, které usnadňují tvorbu instalačních balíčků - checkinstall , resp. jejich vzájemnou konverzi - alien

deb

Relativně nejsnazší cestou jak vytvořit vlastní binární balíček je použití zdrojového balíčku dodávaného v distribuci. Postup se pokusím rozdělit do několika kroků:

  • Nejprve jako root musíte doinstalovat balíky nutné pro splnění požadovaných závislostí:
#apt-get build-dep <kompilovaná aplikace>
  • Potom už jako uživatel stáhnete a rozbalíte zdroj aplikace, co máte v úmyslu kompilovat. Že musíte mít nastavený v souboru /etc/apt/sources.list také zdroje ke zdrojákům , snad není nutno příliš zdůrazňovat.
#apt-get source <kompilovaná aplikace>
APT stáhne příslušný zdrojový balíček a rozbalí do aktuální pozice.
  • Skočíte do vytvořeného podadresáře a spustíte proces sestavení balíku příkazem
#dpkg-buildpackage -rfakeroot
Tento příkaz má řadu dalších parametrů, jimiž můžete kompilaci balíku řídit. Kupř. mě odmítl kompilaci provést, dokud jsem neurčil parametrem -m budoucího vlastníka (sebe)
  • Pokud je proces sestavení přerušen, je nutné analyzovat příčinu a pokusit se ji odstranit. Nejčastější příčiny..
  • nesplněné závislosti (viz první bod)
  • zastaralá verze některého z nezbytných programů (nejprve zkusit aktualizovat systém, popřípadě rekompilovat nejprve vyžadovaný program)
  • Proběhne-li kompilace v pořádku, naleznete v původním umístění zkompilovaný binární balíček, který můžete přes dpkg nainstalovat.


Balíček můžete také kompilovat ihned po stažení, pokud přidáte při stahování zdroje parametr -b Pak je však nutné spouštět příkaz jako root

rpm

tgz