Czy mogę odbudować pakiet bez ponownej kompilacji źródła?


19

Buduję nowy plik .deb i chcę naprawić błędy lintian w opakowaniu. Jednak za każdym razem, gdy przebudowuję, plik reguł „czyści” i w ten sposób zaczyna się ponownie kompilować.

Czy istnieje sposób, aby poinstruować proces kompilacji, że nie chcę ponownej kompilacji, że po prostu zmieniam pakiet, a używanie ostatniego zestawu plików binarnych będzie na razie w porządku?

Odpowiedzi:


26

To zależy od tego, jak budujesz pakiet. dpkg-buildpackagenie wywołuje cleancelu, jeśli podasz mu -ncopcję. Inną przydatną opcją dla kompilacji testowej jest -uc(nie podpisuj pliku zmian). debuilddziedziczy te opcje od dpkg-buildpackage.

W przypadku wersji testowej możesz to zrobić po prostu fakeroot debian/rules binary(dostosuj cel odpowiednio do pakietu wielu binarnych).


8

Używając ccache, możesz zbudować pakiet jak zwykle, bez faktycznej rekompilacji niezmienionych plików źródłowych.

ccache działa, przechowując stare wyniki kompilacji i odbudowuje tylko, jeśli źródło faktycznie się zmieniło.

debuild --prepend-path=/usr/lib/ccache --preserve-envvars=CCACHE_*

2
Mam, dpkg-buildpackage: unknown option or argument --preserve-envvars=CCACHE_*ale usunąłem tę opcję, wydaje się, że bez niej działa dobrze
Dave Butler
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.