Pakatut asennuspaketit

Olisi tarpeen selkeät ohjeet siitä miten asennetaan niitä ohjelmia joita saadaan pakatussa muodossa verkosta. Olemme monia konsteja kokeilleet mutta ei oikein aukea asia. Deb muoto jo osataankin :slight_smile: …siis ohjeet “ratalangasta vääntäen”

mitä tarkoitat pakatulla muodolla? (tar.gz?) No se onkin sitten hieman monimutkaista, mutta yleisesti about näin:

tar zxvf paketti.tar.gz
cd hakemisto
./configure && make && make install


Eero

Jos tarkoitat ohjelmien kääntämistä lähdekoodista niin yleensä paketissa on ohjeet mukana (tiedosto INSTALL). Mitään yleispätevää ohjetta ei voi antaa, koska ohjelman lähdekoodit voivat olla paketoituja eri tavalla, joten niiden käännös ei mene aivan samalla tavalla. Linuxeissa peruskääntämisproseduuri (GNU Makella) näyttää yleensä tältä:

% cd ohjelman\ lahdekoodi/
% ./configure
**** configuren tulostus, joka tarkistaa järjestelmääsi ****
% make || echo "Käännöksessä tapahtui virhe"
**** paljon kääntämistulostetta ****
**** jos näytölle ei tullut "Käännöksessä tapahtui virhe" -viestiä, niin ohjelma hyvin todennäköisesti kääntyi onnistuneesti ****
% su
Password:
# make install
**** asennustulostetta ****

Näin asentaessasi joudut itse huolehtimaan mahdollisista riippuvuuksista. Paketin voi poistaa (näin asennettuna) lähdekoodihakemistossa komentamalla make uninstall.

[quote=“trilog, post:3, topic:968”]Jos tarkoitat ohjelmien kääntämistä lähdekoodista niin yleensä paketissa on ohjeet mukana (tiedosto INSTALL). Mitään yleispätevää ohjetta ei voi antaa, koska ohjelman lähdekoodit voivat olla paketoituja eri tavalla, joten niiden käännös ei mene aivan samalla tavalla. Linuxeissa peruskääntämisproseduuri (GNU Makella) näyttää yleensä tältä:

% cd ohjelman\ lahdekoodi/
% ./configure
**** configuren tulostus, joka tarkistaa järjestelmääsi ****
% make || echo "Käännöksessä tapahtui virhe"
**** paljon kääntämistulostetta ****
**** jos näytölle ei tullut "Käännöksessä tapahtui virhe" -viestiä, niin ohjelma hyvin todennäköisesti kääntyi onnistuneesti ****
% su
Password:
# make install
**** asennustulostetta ****

Näin asentaessasi joudut itse huolehtimaan mahdollisista riippuvuuksista. Paketin voi poistaa (näin asennettuna) lähdekoodihakemistossa komentamalla make uninstall.[/quote]

heheh, miten moni toteuttaa make uninstallin ? yleensä kannattaa pistää configure --prefix=/opt/softa, niin poisto onnistuu rm -fr /opt/softa tai käyttää checkinstallia.


Eero

[quote=“eero, post:4, topic:968”]heheh, miten moni toteuttaa make uninstallin ?[/quote]Kaikissa lähdekoodipaketeissa, joita olen asentanut on ollut Makefilessä määriteltynä uninstall. Mainitse joku, jossa ei ole?

[quote=“eero, post:4, topic:968”]yleensä kannattaa pistää configure --prefix=/opt/softa, niin poisto onnistuu rm -fr /opt/softa tai käyttää checkinstallia.[/quote]Miten moni paketti oikeasti kunnioittaa prefixiä? :wink: (toki niiden pitäisi, mutta tässä on sama tilanne kuin tuon uninstallin kanssa)

[quote=“trilog, post:5, topic:968”][quote author=eero link=topic=1018.msg5510#msg5510 date=1262251282]heheh, miten moni toteuttaa make uninstallin ?[/quote]Kaikissa lähdekoodipaketeissa, joita olen asentanut on ollut Makefilessä määriteltynä uninstall. Mainitse joku, jossa ei ole?

Kaikki jossa on autoconf käytössä, sillä se tehdään configure vaiheessa.


Eero

Wikistäkin löytyy ohjetta: http://linux.fi/wiki/Kääntäminen

[quote=“trilog, post:5, topic:968”][quote author=eero link=topic=1018.msg5510#msg5510 date=1262251282]heheh, miten moni toteuttaa make uninstallin ?[/quote]Kaikissa lähdekoodipaketeissa, joita olen asentanut on ollut Makefilessä määriteltynä uninstall. Mainitse joku, jossa ei ole?

Oikeastaan kaikki autoconf-pohjaiset ohjelmat noudattavat prefixiä ihan hyvin. Toisaalta työkaluja käytetään joskus väärin ja esim. jotkut tiedostot saattavat mennä esim. aina jonnekin kiinteään paikkaan. Tämäntyyliset ongelmat voi kuitenkin suurelta osin välttää siten, että ei koskaan aja make installia roottina. Prefixin voi laittaa jonnekin normaalikäyttäjän käytettävissä olevaan hakemistoon, jolloin make installinkin pitäisi mennä normaalikäyttäjänä ihan hyvin. Tällä voi suojautua myös montaa muuta huonojen Makefilejen ongelmaa vastaan.

Tuo make uninstall varmaan enimmäkseen toimii myös oikein, mutta sen toimivuutta on aika vaikea tarkkailla. Toisaalta sitä ei tarvitse oikeastaan koskaan, jos asentaa ohjelmat pakettienhallinnasta tai muuten välttää maken ajamisen roottina.