Ich würde gerne den genauen Unterschied zwischen make-kpkg
und kennen make deb-pkg
. Diese Frage stellt fast das Gleiche, aber ohne zufriedenstellende Antworten. Zuvor habe ich verwendet
make -j `getconf _NPROCESSORS_ONLN` deb-pkg
Kompilieren des Kernel-Quellbaums und Generieren von Debian-Paketen für Header + Kernel-Image. Ich fand, dass es extrem langsam ist, da das Kompilieren auf meiner Intel i3-CPU der 2. Generation mehr als 1 Stunde dauert. Dann habe ich eine andere Methode gefunden, make-kpkg
die 5-6 mal schneller ist als die deb-pkg
Methode, die ich zuvor verwendet habe. Der Code, den ich ausführe
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers -j `getconf _NPROCESSORS_ONLN`
Das Kompilieren und Generieren der Deb-Pakete dauert nur 10 bis 15 Minuten. In beiden Kompilierungsprozessen werden Jobs aufgeteilt, _NPROCESSORS_ONLN
was macht dann diesen Unterschied aus? Danke im Voraus.
make-kpkg
wird von diesem Drehbuchautor (höchstwahrscheinlich von diesen Debianern) undmake deb-pkg
von den Kernel- Leuten gepflegt. Die Debianer wissen vielleicht mehr.-j $(getconf blah)
stattdessen-j `getconf blah`
.linux-image-*.deb
undlinux-headers-*.deb
etc in die Verteilung, dasmake-kpkg
ist Werkzeug viel wahrscheinlicher aktualisiert werden die Vorteile anderer Kernel im Zusammenhang Helfer nehmen in der Distribution (zBdkms
undupdate-initramfs
und andere). Das Kernel-Makefile
deb-pkg
Ziel wird wahrscheinlich nur bearbeitet, wenn es kaputt geht.bindeb-pkg
Ziel der schnellste Weg für ein Kernelpaket, das nur binär ist .Antworten:
make-kpkg
ist (im Ruhestand), der offizielle Debian-Weg istmake deb-pkg
.Das offizielle Debian-Kernel-Handbuch verwendet
make deb-pkg
.make-kpkg
ist in Wheezy und Jessie enthalten, aber Stretch (derzeit stabil) enthält es nur für PowerPC .Powerpc wird in Buster (Test) nicht mehr unterstützt, und es überrascht nicht, dass der einzige Treffer für Dateinamen, die enthalten,
make-kpkg
eine Info-Datei zur automatischen Vervollständigung für zsh ist .Dies würde deutlich machen, welche von beiden die bevorzugte Option von Debian ist.
(Wenn Sie jedoch testen, was funktioniert und was nicht, und viel neu kompilieren, möchten Sie möglicherweise
scripts/packages/Makefile
als erstes Schritt das "make clean" entfernen . Schließlich zielt sogar make-kpkg darauf ab, ein Debian-Paket aus einem funktionierenden zu erstellen Kernel-Quelle und -Konfiguration, nicht Kernel-Programmierung und Debugging.)quelle
kernel-package
zu denen gehört,make-kpkg
wurde im Juni 2017 aus den Tests entfernt , aber im selben Monat erneut zu instabil und testend hinzugefügt . Weitere Informationen: tracker.debian.org/pkg/kernel-package . Aber ich stimme zu, es ist besser zu verwendenmake deb-pkg
.