Fahren Sie mit der Erstellung eines benutzerdefinierten Kernels fort, und beginnen Sie nicht wieder bei Null.

Fahren Sie mit der Erstellung eines benutzerdefinierten Kernels fort, und beginnen Sie nicht wieder bei Null.

Aufgabe: Erstellen Sie einen benutzerdefinierten Ubuntu-Kernel aus Git-Quellen (in meinem Fall hwe-branch).

Kurze Zusammenfassung:

Ich möchte einen von den Build-Skripten gemeldeten Fehler beheben und dann nur den letzten Kompilierungs-/Verpackungsschritt wiederholen, der beim Kompilieren eines benutzerdefinierten Kernels fehlgeschlagen ist.

Längere Problembeschreibung:

Ich möchte wissen, ob es möglich ist, mit der Erstellung eines benutzerdefinierten Kernels fortzufahren, ohne immer wieder alles von Grund auf neu erstellen/kompilieren zu müssen. Soweit ich weiß, gibt es (zumindest für Xenial 16.04) einige Makefiles, die ./debian/rules.dedie gesamte Kernel-Kompilierungsarbeit übernehmen.

Nachdem ich jedoch herausgefunden habe, warum ein bestimmter Kompilierungs-/Paketierungsschritt fehlgeschlagen ist, und das Problem dann behoben habe (z. B. falsche Proxy-Konfiguration und daher fehlgeschlagene Installation von SPL-DKMS aus einem Online-Repo), möchte ich nach dem letzten erfolgreichen Schritt fortfahren.

Ich habe versucht, die verantwortlichen Teile im Makefile zu identifizieren (in den meisten Fällen war es ./xenial/debian/rules.d/2-binary-arch.mk) und habe versucht, die eigentliche Kompilierung, die am längsten dauert (der Teil, der mit beginnt), auszukommentieren # Do the actual build, including image and modules).

Leider scheint diese Strategie nicht zu funktionieren. Das Erstellen des Kernels schlägt später immer aus Gründen fehl, die über meine Fähigkeiten zur Erstellung eines Linux-Kernels hinausgehen. Häufig wird bei einer Ausführung make mrproperauch das ./debianUnterverzeichnis mit den Build-Skripten gelöscht, wodurch die gesamte Build-Umgebung funktionsunfähig wird.

Ist es möglich, aufgrund kleinerer Probleme, die leicht zu beheben sind, eine Wiederholung der Kompilierung des gesamten Kernels zu vermeiden?

verwandte Informationen