| RPMBUILD(1) | General Commands Manual | RPMBUILD(1) |
NUME
rpmbuild - construiește pachetul(ele) RPM
SINOPSIS
rpmbuild -bETAPA [opțiuni FIȘIER_SPECIFICAȚII ...
rpmbuild -rETAPA [opțiuni] PACHET_SURSĂ ...
rpmbuild -tETAPA [opțiuni] ARHIVĂ_TAR ...
rpmbuild {--rebuild|--recompile} [opțiuni] PACHET_SURSĂ ...
DESCRIERE
rpmbuild este utilizat pentru a crea pachete software în format RPM, într-un mod automatizat și repetabil.
Un pachet constă dintr-o arhivă de fișiere și metadate utilizate pentru instalarea și ștergerea fișierelor din arhivă. Metadatele includ scripturi auxiliare, atribute de fișiere și informații descriptive despre pachet.
Pachetele vin în două varietăți: pachete binare, utilizate pentru a încapsula software-ul care urmează să fie instalat, și pachete sursă, care conțin codul sursă și rețeta necesară pentru a produce pachete binare.
OPERAȚII
-bETAPA
|-rETAPA
-tETAPA
--rebuild, --recompile
Pachetele sunt construite în patru faze: analiză, construire, asamblare și curățare. Cele două faze din mijloc sunt împărțite în continuare în etape, enumerate mai jos, care pot fi construite separat. Construirea unei ETAPE înseamnă executarea tuturor etapelor precedente până la (și inclusiv) cea specificată, cu excepția cazului în care se specifică altfel.
Etape de asamblare
Etapele de asamblare produc pachete și reprezintă principala modalitate de interacțiune cu rpmbuild. Dacă aveți dubii, alegeți una dintre acestea.
a
b
r
s
Etape de construire
Etapele de construire produc artefactele care urmează să fie împachetate, de obicei prin aplicarea de plasturi (corecții) și compilarea surselor și instalarea fișierelor binare în „buildroot”. Aceste etape corespund, în general, secțiunilor din specificații, cum ar fi %prep, %build sau %install, dar unele dintre ele sunt implicite.
Construirea separată a acestor etape este utilă, în general, numai atunci când se împachetează software nou în format RPM și/sau se depanează. Acestea sunt enumerate mai jos în ordinea executării, cu secțiunea specifică corespunzătoare între paranteze, acolo unde este cazul.
p (%prep)
d (%generate_buildrequires)
f (%conf)
c (%build)
i (%install și %check)
l
ARGUMENTE
FIȘIER_SPECIFICAȚII
PACHET_SURSĂ
ARHIVĂ_TAR
OPȚIUNI
--build-in-place
--clean
--nobuild
--nocheck
--noclean
--nodebuginfo
--nodeps
--noprep
--rmsource
--rmspec
--rpmfcdebug
--scm=SCM
--short-circuit
--with OPȚIUNE
--without OPȚIUNE
Consultați rpm-common(8) pentru opțiunile comune tuturor operațiilor.
DEPENDENȚE DE COMPILARE DINAMICĂ
Când etapa %generate_buildrequires rulează și unele dintre cerințele BuildRequires nou generate nu sunt îndeplinite, rpmbuild creează un pachet sursă intermediar care se termină în buildreqs.nosrc.rpm, care conține noile cerințe BuildRequires, și se închide cu codul 11. Acest pachet poate fi apoi utilizat în locul pachetului sursă original pentru a rezolva și instala dependențele de compilare lipsă în mod obișnuit, cum ar fi cu dnf-builddep(8).
Într-un fișier de specificații pot exista mai multe straturi de dependențe dinamice de compilare; prezența unor BuildRequires specifice în sistem poate genera noi BuildRequires la următoarea compilare efectuată cu același pachet sursă. Cea mai simplă modalitate de a vă asigura că toate dependențele dinamice de compilare sunt satisfăcute este să rulați opțiunea -br, să instalați noile dependențe ale pachetului buildreqs.nosrc.rpm și să repetați întreaga procedură până când rpmbuild nu mai iese cu codul 11.
Dacă opțiunea -br este asociată cu --nodeps, se returnează întotdeauna codul de ieșire 11 și se creează întotdeauna un pachet buildreqs.nosrc.rpm.
MEDIU
RPM_BUILD_NCPUS
STARE DE IEȘIRE
În caz de succes, se returnează 0, iar în caz contrar se returnează un cod de eșec diferit de zero.
Pachetele cu o secțiune generate_buildrequires vor returna codul 11 atunci când există DEPENDENȚE DE CONSTRUIRE DINAMICE neîndeplinite.
EXEMPLE
rpmbuild --rebuild hello-1.0-1.src.rpm
rpmbuild -bb --nocheck --with openssl hello.spec
rpmbuild -ta hello-2.0.tar.gz
rpmbuild -bc hello.spec
rpmbuild -bi --short-circuit hello.spec
FIȘIERE
Consultați rpm-common(8).
CONSULTAȚI ȘI
gendiff(1), popt(3), rpm(8), rpm-common(8), rpmbuild-config(5), rpm2cpio(1), rpmkeys(8), rpmspec(1), rpmsign(1), rpm-setup-autosign(1) rpm-macros(7)
TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
| 8 ianuarie 2026 | RPM 6.0.1 |