Instalarea programelor în linux din codul sursă

Instalarea programelor în Linux din codul sursă

Instalarea software-ului din surse are
unele puncte pozitive, dar, de asemenea
multe negative.

pozitiv:






* Este posibil ca pachetul necesar (sau versiunea necesară) să nu fie în depozitele distribuției
* Programul instalat din surse poate fi configurat la cererea dumneavoastră
* Vobshchem ceva, o experiență utilă.

negativ:
* Va trebui să urmăriți toate dependentele pentru instalarea programului
* Dacă se întâmplă ceva, nu va trebui decât să vă bazați pe ajutorul dezvoltatorilor de software

Înainte de instalare
Înainte de a instala software-ul de la surse, asigurați-vă că pachetul corespunzător din
nu există nicio distribuție.

Obținerea sursei
Încărcați sursa. Există de obicei două opțiuni aici:
1. Descărcați arhiva finalizată în formatul tar.gz
2. Luați fișiere din depozitul CVS. În CVS, există de obicei un software "în dezvoltare", mai recent, dar, de asemenea, mai puțin testat.
Instrucțiunile pentru utilizarea depozitelor CVS sunt de obicei găsite pe site-ul dezvoltatorului.

Am despacheta tarbalele. Acest lucru se poate face cu ajutorul oricărui arhivator grafic (de exemplu, File Roller în Gnome) sau din consola:
* pentru arhiva ".tar.gz":
tar xvzf name.archive.tar.gz
* pentru arhiva ".tar.bz2":
tar xvjf name.archive.tar.bz2

Configurarea și compilarea
Dacă instrucțiunile vă solicită să rulați scriptul numit configure ca prim pas, vom rula mai întâi
./ configure --help

și citiți cu atenție opțiunile care pot fi trimise la scriptul de configurare pentru configurarea corectă a programului.
Apoi începem
./ configure

cu opțiunile selectate. În acest moment, programul poate necesita dependențe care nu sunt instalate pe sistemul nostru sau nu sunt găsite de scriptul de configurare. În primul caz, acestea ar trebui găsite și puse, în al doilea - pentru a explora din nou opțiunile de configurare a script-ului pentru a indica locul în care să caute dependențele necesare.

Dacă configurarea a funcționat bine, executați faceți.
Și aici sunt posibile opțiuni. Dacă se termină cu o eroare, vom copia eroarea în fereastra GUGLA și vom vedea cum tovarășii noștri în nefericire s-au confruntat cu o astfel de greșeală. Uneori nu există o soluție și este necesar să se scrie dezvoltatorului.

Dacă mărcile au trecut în mod normal, suntem aproape acolo.
Credeți că ar trebui să rulați acum să faceți instalarea? De fapt, este posibil și așa (nu uitați să deveniți o rădăcină pentru acest lucru).
Dar The Right Way ™ este de a face un pachet pentru distribuția noastră de la sursa compilat și a pus-o în managerul de pachete.

CheclInstall
Acesta este unul dintre numeroasele programe de construire a pachetelor din surse. Ea nu a distrospetsifichna și de a genera pachete pentru cele mai comune administratorii de pachete (spre deosebire de paco, care este de asemenea bun în toate privințele cu excepția faptului că pachetul păstrează baza sa).
În schema clasică de construire a aplicațiilor din sursele care utilizează automake (./configure face make install) ', acest utilitar înlocuiește' make install. Făcând practic același lucru, dar în același timp înregistrând programul instalat în baza de pachete a distribuției.
verificați instalarea -R

Construiți și instalați pachetul RPM (pentru Fedora, Mandriva, SuSe, Alt, ASP.)
checkinstall -D

Va crea și va instala pachetul DEB (pentru Debian, Ubuntu.)
verificați instalarea -S

Crearea și instalați TGZ-pachet (pentru Slackware, Zenwalk, DeepStyle, Vektorlinux, Mops, în distraho- cu livrare au CheclInstall, patch-uri de Patrick.)

Numele pachetului implicit este myNewUtil.
Versiune: 1.2.3. După pornire, checkinstall vă cere mereu să introduceți o descriere a pachetului și, de asemenea, vă permite să modificați numele, versiunea etc.

Creăm directorul foo în directorul de acasă al utilizatorului nostru și în el - directoarele usr și usr / local
Acum devenim rădăcini și scriem
face prefixul de instalare = / home // foo / usr / local
cd foo
makepkg foo.tgz

Ca rezultat, primim pachetul Slack, care poate fi acum instalat de installpkg.







qpkg - numele programului dorit

3. Efectuarea
qpkg -p numele programului dorit

(această comandă se descarcă PKGBUILD, sursele, va compila programul într-un pachet și îl va instala).

Crearea propriului pachet în ArchLinux
(În cazul în care, chiar și în AUR nu a fost găsit).
După cum sa spus, pentru a construi un pachet în Arch, aveți nevoie de un fișier PKGBUID.
Îl vom extinde pe rafturi.
În primul rând, este de remarcat faptul că, pentru a nu dezordona pachetul propriu ABS copac, este mai bine să aloce în acest scop un director separat (I - / var / ABS / locală), în acest director, creați un subdirector, în cazul în care, de fapt, totul se va întâmpla. Copiați fișierul în „“ / var / ABS / PKGBUILD.proto „“ (al cărui prototip este în arborele ABS) și redenumiți-l „PKGBUILD“. Apoi, trebuie să corectați fișierul. În primul rând, trebuie să corectați descrierea pachetului:
* 'pkgname' este numele pachetului,
* "pkgver" este versiunea pachetului,
* "pkgrel" - versiunea ansamblului,
* "url" este de obicei pagina de pornire a aplicației,
* "licență" - licența în baza căreia se eliberează cererea,
Apoi, trebuie să specificați dependențele, conflictele și sursa surselor pachetului pe care îl colectați:
* 'depinde' - lista dependențelor pachetului, numele trebuie să fie închise în citate simple și separate prin spații. Dacă versiunea dependenței este importantă, o puteți specifica
(de exemplu, kdelibs> = 3.5.1),
* 'makedepends' - lista de pachete necesare în timpul fazei de construcție (de exemplu, dacă pachetul se îndreaptă către un sistem de asamblare nestandard, cum ar fi cmake)
* "conflictele" sunt o listă a pachetelor cu care se poate coliziune
* "înlocuiește" - lista de pachete care înlocuiește pachetele colectate,
* 'backup' - lista fișierelor care vor fi salvate când instalați pachetul colectat,
* 'install' - numele scriptului de instalare (în acesta - pașii suplimentari necesari pentru finalizarea instalării pachetului),
* "sursă" - specifică calea de unde vor fi preluate sursele pachetului.
Dacă aveți nevoie de mai multe fișiere de construit (de exemplu, patch-uri suplimentare), acestea sunt indicate de un spațiu,
* 'md5sums' - md5 cantitatea de surse descărcate. Dacă nu completați această linie, nimic groaznic nu se va întâmpla, makepkg va acorda atenție doar acesteia. Apropo, makepkg poate genera aceste sumele de control și le poate adăuga la PKGBUILD. Pentru a face acest lucru, trebuie să efectuați
makepkg -g >> PKGBUILD

Următorul este scriptul de construire, care reprezintă toate acțiunile care ar trebui să fie executate dacă pachetul ar trebui să fie colectat manual. De obicei, aceasta este secvența standard
./ configure face face instalare
cu toate acestea, merită atenția acordată prefixului în care vor fi instalate pachetul și opțiunile pentru scriptul ./configure.
Acum, despre "makepkg" steagurile.
"-f" a fost deja menționat, două mai multe steaguri utile sunt -c, care curăță directorul pachet după construire și -i, care vă permite să instalați imediat pachetul.

Directorul / usr / src / rpm / SURSE ar trebui să vadă o arhivă a programului sursă ne este necesar, ca în directorul „“ / usr / src / rpm / SPECS - fișierul „imya_programmy.spec“ „“ (este un fișier care descrie regulile de asamblare).
* 3. Mergem la directorul / usr / src / rpm / SPECS și acolo:
rpmbuild -bb -target = arhitectura procesorului program_name.spec
(rulați programul de construire)
În loc de „arhitektura_protsessora“ substituie arhitectura procesorului pentru care pachetul (în cele mai multe cazuri se potrivesc i686), „nazvanie_programmy.spec“ - o „“ Spec-fișier „“ pentru programul nostru. Dacă nu sunteți mulțumit de un fel de dependență, „rpmbuild“ de a spune despre el - atunci trebuie să instalați pachete lipsă.
* 4. Dacă totul merge bine, de ieșire vom obține rpm-pachet programul nostru, el va fi în „“ / usr / src / rpm / RPMS / arhitektura_protsessora_pod_kotoruyu_sobiralsya_paket „“. Ne mutăm la acest director și de acolo:
rpm -ivh program_name.rpm

Totul, programul este instalat.

rândui
Stow - este un program de management al pachetelor pe care le ține pe "rafturi individuale" (cum ar fi / usr / local / Stow / emacs, dar '' / usr / local / Stow / perl '') și, în același timp, "pretinzând" că acestea sunt instalate în aceeași locație (manual /usr/local).Pochitat pe Stow aici.
Stow este un script pentru Pearl, care nu se va păcăli dacă ai instalat Perl 5.005 sau mai mare. Trebuie instalat înainte de a instala Stow.
Un exemplu de utilizare a lui Stow.
Să presupunem că trebuie să setăm 'abc-1.4' și avem 'abc-1.4.tar.gz' și trebuie să fie instalat în / usr / local / bin. După despachetare
tar -zxvf abc-1.4.tar.gz

accesați directorul creat 'abc-1.4'
cd abc-1.4

Mai întâi trebuie să instalăm aplicația în directorul stow. Lăsați-l să fie / usr / local / stow.
Vom efectua etapele de instalare de rutină:
[root @ linuxbox abc-1.4] # ./configure --prefix = / usr / local / stow / abc-1.4
[root @ linuxbox abc-1.4] # face
[root @ linuxbox abc-1.4] # faceți instalarea

Apoi, trebuie să aplicăm aplicația "raft" și să creăm un simbol. Legături în interiorul directorului țintă, adică '' / usr / local / bin '', folosind stow. Aceste operațiuni pot fi efectuate de la utilizator.
[userX @ linuxbox abc-1.4] $ cd / usr / local / stow /
[userX @ linuxbox stocare] $ stow -t / usr / local / bin abc-1.4

Aplicația 'abc-1.4' este acum localizată în directorul său, abc-1.4, în interiorul directorului stow și
Link-uri relevante pentru acesta - în directorul de destinație, avem nevoie de /usr/local/bin.Esli perekofigurirovat sau „ABC-1.4“ pentru a face upgrade cererii, putem face pur și simplu modificările corespunzătoare în propriul său director, și apoi din nou la „pus pe raft“, actualizarea legăturile simbolice corespunzătoare:
[userX @ linuxbox stocare] # $ stow -R abc-1.4

Pentru a elimina aplicația, trebuie doar să "eliminăm de pe raft" abc-1.4:
[userX @ linuxbox stocare] # $ stow -D abc-1.4

Stow elimină pur și simplu legăturile simbolice care indică aplicația instalată și nu va șterge niciodată fișierele de instalare. Astfel, este posibil ca, ulterior, să se pună din nou aplicația "așezată pe raft" utilizând o aplicație







Articole similare

Trimiteți-le prietenilor: