| 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.
| 7 noiembrie 2025 | RPM 6.0.0 |