Fórum Root.cz
Hlavní témata => Distribuce => Téma založeno: Marek 22. 04. 2020, 18:18:32
-
Ahoj,
prosim o pomoc s rebuildem. Mym cilem je vybuildovat znovu rh-haproxy18-haproxy s podporou multihreadu z source RPM balicku.
[rpmbuild@clean-centos-7 download]$ cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
Pridal jsem si scl repozitare.
Pres yumdownloader stahnul posledni verzi
1)
zkusil prebuildovat:
[rpmbuild@clean-centos-7 download]$ rpmbuild --rebuild rh-haproxy18-haproxy-1.8.17-1.el7.1.src.rpm
Instaluji: rh-haproxy18-haproxy-1.8.17-1.el7.1.src.rpm
varování: rh-haproxy18-haproxy-1.8.17-1.el7.1.src.rpm: Hlavička V4 RSA/SHA1 Signature, key ID f2ee9d55: NOKEY
chyba: File /home/rpmbuild/rpmbuild/SOURCES/rh-haproxy18-haproxy-1.8.17.tar.gz: Adresář nebo soubor neexistuje
Jak mam zavolat tohle, aby to neselhalo?
2)
Kdyz zavolam primo, tak build probehne, ale zkompiluje se to se standardnim jmenem, ktere je vyplnene ve spec filu.
rpmbuild -bb ./SPECS/haproxy.spec
[rpmbuild@clean-centos-7 x86_64]$ ls
haproxy-1.8.17-1.el7.1.x86_64.rpm
3)
[rpmbuild@clean-centos-7 rpmbuild]$ rpmbuild -bb ./SPECS/haproxy.spec --define "scl rh-haproxy18"
-->
/var/tmp/rpm-tmp.fH7j4D: line 84: fg: no job control
-->
radek 84
%scl_syspaths_install_wrapper -n haproxy -m link /opt/rh/rh-haproxy18/root/etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg
[root@clean-centos-7 ~]# yum list installed | grep haproxy
rh-haproxy18.x86_64 3.1-2.el7 @centos-sclo-rh
rh-haproxy18-haproxy.x86_64 1.8.17-1.el7.1 @centos-sclo-rh
rh-haproxy18-haproxy-syspaths.x86_64 1.8.17-1.el7.1 @centos-sclo-rh
rh-haproxy18-runtime.x86_64 3.1-2.el7 @centos-sclo-rh
Tohle je takovej vytah toho, co jsem zkousel.
-
Ahoj,
prosim o pomoc s rebuildem. Mym cilem je vybuildovat znovu rh-haproxy18-haproxy s podporou multihreadu z source RPM balicku.
Kdyz zavolam primo, tak build probehne, ale zkompiluje se to se standardnim jmenem, ktere je vyplnene ve spec filu.
rpmbuild -bb ./SPECS/haproxy.spec
co zeditovat ten specfile?
-
Ahoj,
prosim o pomoc s rebuildem. Mym cilem je vybuildovat znovu rh-haproxy18-haproxy s podporou multihreadu z source RPM balicku.
Kdyz zavolam primo, tak build probehne, ale zkompiluje se to se standardnim jmenem, ktere je vyplnene ve spec filu.
rpmbuild -bb ./SPECS/haproxy.spec
co zeditovat ten specfile?
Jo to umim, ale prinasi to radu prblemu. Idelane jsem chtel jenom patchounout radek, kde bych pridal USE_THREAD=1 a balik prekompiloval, tak jak byl. Vzdy kdyz by prisla nejaka oprava, tak by si to automaticky stahlo novy source RPM a prepsalo by se jenom tohle. Bylo by to relativne stabilni a bez udrzbove.
Kdyz ten spec file prepisu, abych zachoval scl jmeno, tak ho natolik rozjebu, ze to dalsi update nemuze ustat, alespon to predpokladam. To uz mi prijde lepsi si napsat vlastni spec file a tahat si zdrojaky z gitu a udelat si vlastni rpm balik.
Nicmene ted jsem ve fazi, ze by me zajimalo uz jenom z principu, jak udelat, takhle jednoduchou vec. To prece nemuze byt slozite, to musej v redhatu delat kazdou chvili.
-
Ja bych na to sel tak, ze bych si do buildrootu dal patch, ktery mi provede pozadovanou zmenu ve zdrojaku a pak bych provedl patricnou zmenu ve specfile.
Zhruba nejak takto: http://bradthemad.org/tech/notes/patching_rpms.php
-
Možná pomůže dokumentace: https://www.softwarecollections.org/en/docs/guide/#sect-Building_a_Software_Collection_Locally
Ale výcuc z ní je:
rpmbuild -ba package.spec --define 'scl name'
Což jak koukám jste zkoušel. Takže problém je s tím fg
Hmm...
-
Což jak koukám jste zkoušel. Takže problém je s tím fg
můj tip je že to nedokáže převést %scl_syspaths_install_wrapper na příkaz
-
Ja bych na to sel tak, ze bych si do buildrootu dal patch, ktery mi provede pozadovanou zmenu ve zdrojaku a pak bych provedl patricnou zmenu ve specfile.
Zhruba nejak takto: http://bradthemad.org/tech/notes/patching_rpms.php
viz ad 1) Tento navod je presne ta varianta, ktera nefunguje. SCL baliky jsou zrejme o neco obohacene.