Kann ich ein Paket neu erstellen, ohne die Quelle neu zu kompilieren?

18

Ich erstelle eine neue .deb-Datei und möchte Fehler in der Verpackung beheben. Bei jeder Neuerstellung führt die Regeldatei jedoch eine Bereinigung durch und beginnt daher erneut mit der Kompilierung.

Gibt es eine Möglichkeit, den Erstellungsprozess anzuweisen, dass ich nicht neu kompilieren möchte, dass ich nur die Verpackung ändere und die Verwendung der letzten Binärdateien für den Moment in Ordnung ist?

crb
quelle

Antworten:

26

Das hängt davon ab, wie Sie das Paket erstellen. dpkg-buildpackageRuft das cleanZiel nicht auf, wenn Sie die -ncOption übergeben. Eine weitere nützliche Option für die Testerstellung ist -uc(die Änderungsdatei nicht signieren). debuilderbt diese Optionen von dpkg-buildpackage.

Für einen Testbuild können Sie dies einfach tun fakeroot debian/rules binary(passen Sie das Ziel an, wie es für ein Paket mit mehreren Binärdateien geeignet ist).

Gilles 'SO - hör auf böse zu sein'
quelle
8

Mit ccachekönnen Sie das Paket wie gewohnt erstellen, ohne tatsächlich unveränderte Quelldateien neu zu kompilieren.

ccache Diese Funktion speichert alte Kompilierungsergebnisse und erstellt sie nur dann neu, wenn sich die Quelle tatsächlich geändert hat.

debuild --prepend-path=/usr/lib/ccache --preserve-envvars=CCACHE_*
lfaraone
quelle
2
Ich habe, dpkg-buildpackage: unknown option or argument --preserve-envvars=CCACHE_*aber ich habe diese Option entfernt, scheint ohne sie
Dave Butler