Instalacija paketa i kompajliranje - Ubuntu

Instalacija paketa i kompajliranje - Ubuntu

offline
  • Uroš Ilić
  • dr stom.
  • Pridružio: 08 Jul 2006
  • Poruke: 2182
  • Gde živiš: Beograd

Svaka distribucija Linuxa, ima neki svoj nacin manipulacije paketima i njihovog instaliranja.
Ubuntu buduci da je Debian bazirana distribucija, koristi .deb pakete i to moze da pribavi i instalira na vise nacina.

I) Prvi i glavni sistem je Synaptic paket manager i njegov pojednostavljeni oblik Ubuntu Software Center, koji iz svojih definisanih repozitorijuma (adresa ka bazi softwera na nekom serveru), vuce i onda instalira paket. To mu je osnovna namena, ali se takodje bavi azuriranjem paketa, vodi racuna o medjuzavisnostima paketa kada instalira. Sluzi i za deinstalaciju tako instaliranih paketa, takodje i onih instaliranih duplim klikom iz nekog .deb paketa (npr. skinut sa www.getdeb.net)
Synaptic je u stvari graficki frontend za dpkg i kada skine paket iz repoa, instalira ga ustvari komandom dpkg -i ime_paketa. Deinstalira komandom dpkg -r ime_paketa bez brisanja konfiguracionih fajlova, a sa opcijom --purge, uklanja i kofiguracione fajlove. Takodje, vec skinuti . deb paket za instalaciju, se moze, znaci, instalirati u Ubuntuu ili duplim klikom na paket, ili komandom sudo dpkg -i ime_paketa
Adrese repozitorijuma se nalaze u fajlu /etc/apt/sources.list i mogu se dodavati, menjati samim editovanjem tog fajla ili graficki u System > Sofware Sources. Osnovne adrese su tu, ali bi bilo mozda pametno dodati i adresu ka Medibuntu repozitorijumu, kako bi kroz Synaptic bili raspolozivi programi, kao sto su Skype, Adobe Acrobat Reader, Google Earth i razni drugi. To se radi na sledeci nacin:

Za sva Ubuntu izdanja, zajedno sa GPG kljucem
sudo wget --output-document=/etc/apt/sources.list.d/medibuntu.list http://www.medibuntu.org/sources.list.d/$(lsb_release -cs).list && sudo apt-get --quiet update && sudo apt-get --yes --quiet --allow-unauthenticated install medibuntu-keyring && sudo apt-get --quiet update
Takodje uz pomoc programa Ubuntu Tweak, moguce je dodati razne PPA repozitorijume ( i Medibuntu) i instalirati azurne verzije velikog broja programa.

II) Drugi nacin bi bio u terminalu, tj koriscenjem apt-get naredbe
To bi islo ovako; sudo apt-get install ime_paketa i onda bi se taj paket skinuo, takodje iz repozitorijuma i instalirao. Potrebno je jednino znati tacno ime paketa. Ubuntu je tu otisao malo dalje, pa je dosta intuitivan. Naime, kada otkucate ime paketa koje nije potpuno ili je razlicita verzija od dostupne, on ispisuje mogucu varijantu imena u terminalu, tj. nudi onu koja je dostupna u repozitorijumu (za razliku od fenomenalnog PCLOS koji takodje koristi apt-get, a i Synaptic). Pre ovakvog nacina povlacenja i instalacije paketa ne bi bilo lose odraditi i sudo apt-get update, kako bi se osvezila lista raspolozivih paketa u repozitorijumu. Deinstalacija se radi sa komandom sudo apt-get remove ime_paketa, a u slucaju da zelimo kompletno uklanjanje (ukljucujuci i konfiguracione fajlove), onda ukljucujemo i opciju --purge: znaci, sudo apt-get remove --purge ime_paketa. Primecujete, da je sve ovo potrebno raditi sa sudo, tj. za instalaciju su potrebna administratorska ili root prava.
apt-get takodje vodi racuna o medjuzavisnostima paketa, tako da ce pri instalaciji, proveriti iste i ponuditi instalaciju dodatnih, potrebnih paketa, ako ih ima dostupno.
Uz pomoc apt-get, moguce je i nadogradjivati instalirane pakete komandom sudo apt-get upgrade ime_paketa ili recimo nadograditi celu distribuciju na novu verziju sa sudo apt-get dist-upgrade.
Korisne opcije su i sudo apt-get autoremove (uklanja pakete od kojih vise nista ne zavisi), zatim sudo apt-get autoclean (uklanja zaostavstine deinstaliranih paketa) i sudo apt-get autoclean (cisti aptov kes, tj. skinute instalacije paketa iz /var/cashe/apt/archives).

III) Treci nacin, je aptitude, program koji se takodje upotrebljava u konzoli, ali ima i graficki intrefejs. Preferira se u odnosu na apt-get iz tog razloga i navodno, zato jer bolje proverava i barata zavisnostima paketa. Koristi se na slican nacin kao apt-get, tj. sudo aptitude install ime_paketa, za instalaciju, sudo aptitude remove ime_paketa. Dolaze u obzir sledece opcije remove, purge, hold, unhold, keep, reinstall To su osnove, za ozbiljniju upotrebu i detaljnije o opcijama mozete pogledati man aptitude

IV) Cetvrti nacin bi bilo kompajliranje programa iz izvornog koda ili ti source code i to obicno, kada nema drugih opcija
U Ubuntu se moramo prvo obezbediti da imamo instaliran kompajler gcc, koji se koristi za kompajliranje izvornog koda pisanog u C ili C++ (najcesce). To cemo pribaviti instaliranjem paketa buil-essential
sudo apt-get install build-essential.
Ne bi bilo lose instalirati i automake, kako bi mogli da pokrenemo configure.sh i autogen.sh shell scripts koji cesto dodju u izvornom kodu. sudo apt-get install automake
Konacno,mozemo instalirati i CheckInstall, koji nam sluzi za "sigurno" instaliranje . sudo apt-get install checkinstall
Onda se sve svodi na skidanje izvornog koda sa neta, njegovog raspakivanja u zeljeni folder npr. /home/user i tri osnovne komande sa kojima cemo konfigurisati, napraviti i instalirati program.
Npr. promenimo u terminalu direktorijum u onaj gde je otpakovan prgram, npr. audacious_xx cd /home/user/audacious_xx
Zatim ide komanda ./configure, koja proverava dali kompjuter ispunjava neophone zahteve/zavisnosti da se sagradi paket i omogucava promenu raznih opcija kompajliranja paketa i promenu puta gde ce program biti instaliran. Ukoliko u toku ovog koraka ispise da fali neki paket ili vise njih, oni se kao zavisnosti, moraju instalirati pa ponoviti ./configure.
Ukoliko sve prodje kako treba, ide se na sledecu komandu make, koja ustvari sada kompajlira program.
Kada se to zavrsi ostaje jos da se program instalira na sistem.
sudo make install i to je to.
Kod Ubuntua, postoji jos jedna pogodnost. Ako program instalirate sa sudo checkinstall, on se instalira kao klasican .deb paket i moguce ga je deinstalirati iz Synaptica, dok klasicno kompajlirane programe, nije. Takodje napravice i .deb instalacioni paket za drugu priliku, u folderu gde smo kompajlirali.

Kao poslednje, pomenucemo binarne pakete sa ekstenzijom .bin, kao vrstu paketa zajednicku za dosta razlicitih distribucija (i .deb i .rpm baziranih). Ovakvi paketi instaliraju se tako sto u terminalu, odemo u direktorijum gde se paket nalazi, npr. cd /home/user/Downloads pa zatim paketu da izvrsna mogucnost sudo chmod 755 ime_paketa.bin i onda komandom paket i instalira ./ime_paketa.bin



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 1133 korisnika na forumu :: 53 registrovanih, 8 sakrivenih i 1072 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., Andrija357, atmel, Bobrock1, bojank, Buzdovan, croato, Dimitrije Paunovic, Dimitrise93, doklevise, dragoljub11987, FOX, Frunze, Gargantua, ivica976, jaeger, Karla, kikisp, Koridor, kunktator, Leonov, Lošmi, mercedesamg, Metanoja, MikeHammer, milenko crazy north, Milometer, mkukoleca, mrav pesadinac, MrNo, NoOneEver Dreams, nuke92, Oscar, Panter, Parker, pein, procesor, raptorsi, robert1979, Rogan33, royst33, ruger357, S2M, sasa76, slonic_tonic, Srki94, Srle993, stegonosa, tubular, vathra, VP6919, YugoSlav, zodiac94