Tak pro našeho milovaného Jarinka =) a doufám, že ne jen pro něj, jsem připravil takový krásný návod, jak si zkompilovat Odamex v Ubuntu a jak jej udržovat stále aktuální (myšleno vývojovou verzi ze zdrojových kódů). Jedná se o postup na absolutně čisté instalaci Ubuntu. Takže v tomto návodu budu řešit závislosti a vše kolem. Jedná se Ubuntu verze 8.04 zaktualizované a jádrem ke dni 3.7. 2008. Ovšem tento postup bude na 100% fungovat na jakémkoliv Ubuntu, jen ne všude bude nutné řešit závislosti, když už je třeba budete mít splněné.
vain@vain-desktop:~$ uname -a
Linux vain-desktop 2.6.24-19-generic #1 SMP Wed Jun 18 14:43:41 UTC 2008 i686 GNU/Linux
Pozn.: vzhledem k tomu, že nejsem uživatel Ubuntu, apt-get a nerozumím si s deb balíčky, nemusí být tento návod zrovna košér, ale fungovat bude =)
- – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - -
- – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - -
Pokud jste extrémně líní, vložte tento příkaz do Terminálu (ctrl+c ; ctrl+shift+v pro vložení do terminálu), pokud chcete porozumět jak se Odamex kompiluje a instaluje, následující příkaz přeskočte a pokračujte ve čtení pod ním.
Po zadání příkazu níž se vyřeší závislosti, stáhnou aktuální zdrojové kódy, Odamex se zkompiluje a nainstaluje. Ovšem nemusí fungovat, ale měl by.
sudo apt-get install gcc g++ subversion libsdl1.2debian libsdl1.2-dev libsdl-mixer1.2 libsdl-mixer1.2-dev wx-common libwxgtk2.8-dev libwxgtk2.8-0 && cd ~ && svn co http://odamex.net/svn/root/trunk odamex && cd odamex && sudo make install
- – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - -
- – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - – - -
Jsem zastánce konzole a práce v ní je jednodušší, rychlejší a pro vysvětlění jasnější, lepší než klikněte sem, pak tam, no a pak na to tlačítko druhé zvrchu. Prostě napiště tento příkaz a dejte enter. Myslím, že to pochopí každý =)
Takže jedem, zaprvé si vyřešíme závislosti. Potřebujeme kompilátor, aby jsme vůbec mohli zdrojový kód zkompilovat. Ten by měl být již obsažen v distribuci přímo, jednoduše to zjistíme zapsáním příkazu gcc – -version do Terminálu. Terminál spustíme Aplikace > Příslušenství > Terminál
vain@vain-desktop:~$ gcc – -version
gcc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
Pokud se Vám vypíše něco ve stylu
bash: gcc: command not found
znamená to, že gcc není nainstalováno a musíme jej doinstalovat. To uděláme příkazem
sudo apt-get install gcc
budete dotázání na zadání hesla pro správce počítače root, takže jej zadejte a potvrďte enterem. Z bezpečnostních důvodů se nezobrazují hvězdičky při psaní hesla, aby někdo jiný nemohl vidět, z kolika znaků se Vaše heslo skládá, takže se nelekejte.
Dále pro kompilaci také g++ takže opět příkazem
sudo apt-get install g++
Aby jsme to vzali pěkně popořadě, budeme potřebovat ze všeho nejdříve aplikaci subversion, která slouží k jednoduchému stažení zdrojových kódů z internetu.
Toto provedeme příkazem
sudo apt-get install subversion
Existují k tomuto i grafické programy, ale stažení zdrojových kódů přes konzoli je přece jen jednodušší a rychlejší. Po zadání příkazu výše budete opět dotázání na heslo správce. Mimo budou stahovány ještě potřebné aktualizace, takže budete akci muset ještě potvrdit klávesou Y. Celkový výstup zde.
vain@vain-desktop:~$ sudo apt-get install subversion
Čtu seznamy balíků… Hotovo
Vytvářím strom závislostí
Čtení stavových informací… Hotovo
Následující extra balíky budou instalovány:
libapr1 libaprutil1 libpq5 libsvn1
Navrhované balíky:
db4.6-util patch subversion-tools
Následující NOVÉ balíky budou nainstalovány:
libapr1 libaprutil1 libpq5 libsvn1 subversion
0 aktualizováno, 5 nově instalováno, 0 k odstranění a 0 neaktualizováno.
Potřebuji stáhnout 1294kB archivů.
After this operation, 6197kB of additional disk space will be used.
Chcete pokračovat [Y/n]? y
Mám:1 http://cz.archive.ubuntu.com hardy/main libapr1 1.2.11-1 [115kB]
Mám:2 http://cz.archive.ubuntu.com hardy-updates/main libpq5 8.3.3-0ubuntu0.8.04 [272kB]
Mám:3 http://cz.archive.ubuntu.com hardy/main libaprutil1 1.2.12+dfsg-3 [70,0kB]
Mám:4 http://cz.archive.ubuntu.com hardy/main libsvn1 1.4.6dfsg1-2ubuntu1 [594kB]
Mám:5 http://cz.archive.ubuntu.com hardy/main subversion 1.4.6dfsg1-2ubuntu1 [243kB]
Staženo 1294kB za 0s (1325kB/s)
Instaluji balík libapr1.
(Čtu databázi … nyní je nainstalováno 114310 souborů a adresářů.)
Rozbaluji libapr1 (z …/libapr1_1.2.11-1_i386.deb) …
Instaluji balík libpq5.
Rozbaluji libpq5 (z …/libpq5_8.3.3-0ubuntu0.8.04_i386.deb) …
Instaluji balík libaprutil1.
Rozbaluji libaprutil1 (z …/libaprutil1_1.2.12+dfsg-3_i386.deb) …
Instaluji balík libsvn1.
Rozbaluji libsvn1 (z …/libsvn1_1.4.6dfsg1-2ubuntu1_i386.deb) …
Instaluji balík subversion.
Rozbaluji subversion (z …/subversion_1.4.6dfsg1-2ubuntu1_i386.deb) …
Nastavuji balík libapr1 (1.2.11-1) …
Nastavuji balík libpq5 (8.3.3-0ubuntu0.8.04) …
Nastavuji balík libaprutil1 (1.2.12+dfsg-3) …
Nastavuji balík libsvn1 (1.4.6dfsg1-2ubuntu1) …
Nastavuji balík subversion (1.4.6dfsg1-2ubuntu1) …
Processing triggers for libc6 …
ldconfig deferred processing now taking place
vain@vain-desktop:~$
Nyní se vrhneme na řešení závislostí nutných pro samotný Odamex a Launcher, tedy SDL knihovny a wx knihovny. Zde jsem objevil menší zádrhel o kterém jsem do teď netušil a příjde mi to jako pěkná… mírně řečeno prasárna. Knihovny se v Ubuntu (pravděpodobně ne jen v něm) jmenují jinak. Žádné SDL, SDL-devel atd.. Takže tento postup je speciálně pro Ubuntu a podobné distribuce. Takže jako první instalace knihoven SDL.
sudo apt-get install libsdl1.2debian
Může se stát, nebo pravděpodobně se stáne, že Vám konzole vypíše něco podobného
vain@vain-desktop:~$ sudo apt-get install libsdl1.2debian
Čtu seznamy balíků… Hotovo
libsdl1.2debian je již nejnovější verze.
0 aktualizováno, 0 nově instalováno, 0 k odstranění a 0 neaktualizováno.
Pokud umíte číst =) tak Vám určitě došlo, že libsdl je již nainstalováno a tedy jste tento krot ani nemuseli dělat =) Jdeme teda dál, další bude SDL-devel, v Ubuntu pojmenován libsdl1.2-dev, takže
sudo apt-get install libsdl1.2-dev
Instalace opět bude pokračovat po potvrzení klávesou Y.
Po dokončení nainstalujeme SDL_mixer, opět jednoduchým příkazem
sudo apt-get install libsdl-mixer1.2
dále SDL_mixer-devel
sudo apt-get install libsdl-mixer1.2-dev
Tak, tímto máme vyřešené závislosti pro kompilaci Odamexu. Teď si pořešíme závislosti pro Odamex Launcher.
Pozn.: možná se to může zdát jako zdlouhavá cesta, nějaké řešení závislostí a podobně, ale má to svůj důvod, navíc je řešíte jen jednou. Ve Windows například si každá aplikace tytéž závislosti jako SDL a podobně tahá sebou, takže stejné knihovny můžete mít zbytečně nakopírované i 50x v systému. V Linuxu je to geniální tím, že je máte jednou a všechny aplikace o nich ví a „sahají“ si na to jedno místo, kde jsou nainstalované. Schválně si dejte ve Windows hledat například SDL, kolik záznamů najdete.
Takže zpátky k závislostem. Budeme potřeobat pro Launcher který je napsaný pomocí wxWidgets „wxka“. V konzoli teda
sudo apt-get install wx-common
Toto byly nástroje pro kompilaci wxWidgets projektů. Dále budeme potřebovat i knihovny ke kompilaci, takže
sudo apt-get install libwxgtk2.8-dev
No a aby jsme mohli nakonec zkompilovaný launcher u spustit, nainstalujeme finální
sudo apt-get install libwxgtk2.8-0
Tak, máme vyřešené závislosti a toto už nikdy při kompilace Odamexu nebudeme muset nikdy dělat. Nyní samotné obstarání zdrojových kódů, kompilace a instalace.
Pokud chcete stabilní verzi Odamexu, stáhněte si jej z oficiálních stránek ze sekce download, nebo klikněte na ikonku tučňáka vpravo nahoře na této stránce. Pokud chtete aktuální verzi, tedy udělat si takový nightly build ze zdrojových kódů, stáhněte je příkazem… no napřed si raději přejdeme do domovského adresáře, kdo ví kde se teď v konzoli poflakujete =) příkazem
cd ~
teď si stáhneme zdrojové kódy příkazem
svn co http://odamex.net/svn/root/trunk odamex
Teď se chvilinku budou stahovat zdrojové kódy odamexu. Po jejich stažení napište do konzole příkaz
cd odamex
Příkaz cd znamená change directory, takže jsme přesli do složky odamex, kde jsou stažené zdrojové kódy. Zde už jen napíšeme příkaz
make
Nyní se začnou kompilovat zdrojové kódy. Pokud kompilujete poprvé, bude to určítě krásný pohled =) Já už zkompiloval samotné jádro tolikrát, že z toho pohledu zvracím ;-)
Pokud jste dodrželi všechny předcházející kroky, měla by kompilace proběhnout správně a poslední řádek by měl vypadat takto
g++ obj/master/i_net.o obj/master/main.o -o ./odamaster
Pokud né a končí nějakou hláškou error, zkontrolujte všechny předchozí kroky, jestli jste někde neudělali chybu, popřípadě výstup konzole napište do komentářů, poradím co je špatně.
Doufám ale, že kompilace byla bez problému, tedy gratuluji, máte zkompilovaný odamex. Nyní Odamex Launcher. Hupsněte tedy do složky odalaunch známým příkazem cd
cd odalaunch
a opět již známý příkaz
make
Nyní se začne kompilovat Odamex Launcher.
Odamex a Odamex Launcher máme zkompilovaný, teď zbývá jej nainstalovat. Vrátíme se o složku níže, jelikož teď jsme stále ve složce se zdrojovými kódy Odamex Launcheru, přejdeme tedy zpět příkazem
cd ..
Zde už můžeme zadat příkaz pro instalaci Odamexu
sudo make install
Tímto se nám Odamex nainstaluje a je připraven ke spuštění příkazem Odamex. Samozřejmě bude vyžadovat ještě doom2.wad
Nejlepší bude, si udělat spouštěč. Klikněte pravým tlačítkem na pracovní plochu a dejte možnost Vytvořit spouštěč… (druhé z vrchu). Vyskočí Vám tabulka.
- Typ: Aplikace Pozn.: nechte jak je
- Název: Odamex
- Příkaz: odamex -waddir /home/vain/wads Pozn.: waddir je přepínač, kde má klient hledat wad soubory, změňte podle toho, kde je máte uložené, nezapomeňte přidat i odamex.wad
- Komentář: Multiplatformní port hry Doom Pozn.: je to dobrovolné, nemusíte vyplňovat
- Dále můžete změnit ikonku, klikněte na tu pružinku v levé horní části okna. Vyskočí Vám nabídka ikonek, ikonka Odamexu je ve složce media u zdrojových kódů, u mě to bylo /home/vain/odamex/media/icon_odamex_96.png
Mohlo by to vypadat nějak takto:
Výsledek bude krásná ikonka Odamexu na ploše =)
Totéž můžete udělat i s Odamex Launcherem, nějak takto:
- Typ: Aplikace Pozn.: nechte jak je
- Název: Odamex Launcher
- Příkaz: odalaunch
- Komentář: Vyhledávač serverů pro port Odamex
- Cesta k ikonce byla u mě /home/vain/odamex/media/icon_odalaunch_96.png
Doufám že byl návod užitečný a dopadl se zdárným koncem. Nebojte se na cokoliv zeptat v komentářích, pokud Vám není něco jasné, nebo se Vám nedaří Odamex zkompilovat či nainstalovat. Upozorňuju že jsem to po sobě nečetl, kdyby někdo našel chybu tak dejte vědět.