Debian/Ubuntu-Kernel-Build-System? / Ubuntu Studio 8.10

08/04/2009 - 10:12 von Ansgar Strickerschmidt | Report spam
Hallo NG,

kann mir mal jemand in aller Kürze zusammenfassen, wie man mit dem "Debian
way" einen Kernel baut, patcht und Module baut? Ich habe die
Kernel-Headers und den Sourcecode (2.6.27, generic) verfügbar. Wenn ich in
dem headers-Verzeichnis ein "make oldconfig" oder "make menuconfig" mache,
dann klappt das ja. Ich kann ohne die zugehörigen Sourcen nur nix
kompilieren. Wie "verheirate" ich denn die Headers mit dem Rest der
Sourcen? Mir ist, wie ihr seht, das ganze Gefüge da nicht klar.
(Untre SuSE war das bisher einfacher; da gab es die passenden Sourcen mit
dazu, und mit einem "make cloneconfig" ergab es anschließend den aktuell
laudenden Kernel wieder...)

Spezialfrage: Wie ist denn der Stand in Sachen Ubuntu Studio mit Ubuntu
8.10 (Intrepid Ibex) als Basis? Ich komme da nicht klar, mir den Quellcode
so zurechtzulegen, dass ich denselben Kernel (2.6.27-3-rt, also die
Echtzeitversion) wieder gebaut bekommen würde. Da steht irgendwo in den
Beschreibungen etwas, man möge den RT-Patch von 2.6.26-5-rt anwenden, doch
das klappt bei mir überhaupt nicht. Viele "Hunk failed"- Nachrichten. Oder
muss man erst die Source von 2.6.26-5 herunterladen, dann den RT-Patch
anwenden und dann auf 2.6.27-3 patchen? Blicke da nicht durch.
Konkret würde ich gerne die Fernbedienung für den DVB-T-Stick im System
bekannt machen, dazu müssen einige Zeilen mit den FB-Codes in den entspr.
Quelltext mit rein.

Habe auch noch zwei weitere Probleme mit ebendiesem Betriebssystem, aber
ich glaube, da mach ich mal einen neuen Post auf.

Ansgar

Mails an die angegebene Adresse erreichen mich - oder auch nicht.
Nützliche Adresse gibt's bei Bedarf!
Mail to the given address may or may not reach me - useful address will be
given when required!
 

Lesen sie die antworten

#1 Henning Paul
08/04/2009 - 10:58 | Warnen spam
Ansgar Strickerschmidt wrote:

kann mir mal jemand in aller Kürze zusammenfassen, wie man mit dem
"Debian way" einen Kernel baut, patcht und Module baut? Ich habe die
Kernel-Headers und den Sourcecode (2.6.27, generic) verfügbar. Wenn
ich in dem headers-Verzeichnis ein "make oldconfig" oder "make
menuconfig" mache, dann klappt das ja. Ich kann ohne die zugehörigen
Sourcen nur nix kompilieren. Wie "verheirate" ich denn die Headers mit
dem Rest der Sourcen? Mir ist, wie ihr seht, das ganze Gefüge da nicht
klar.



Um Kernelmodule dazuzukompilieren, sollte die zum laufenden
Kernel-Flavour passenden headers ausreichen - diese sind dann auch
schon korrekt für den Flavour
konfiguriert. /lib/modules/`uname -r`/build sollte dahinzeigen, und
einen anderen Pfad sollte kein externes Kernelmodulbuildsystem
verwenden, "/usr/src/linux" ist pfui-bàh.

(Untre SuSE war das bisher einfacher; da gab es die passenden
Sourcen mit dazu, und mit einem "make cloneconfig" ergab es
anschließend den aktuell laudenden Kernel wieder...)



Jein, /usr/src/linux-`uname -r`-obj gehört bei SuSE auch schon zum
kernel-paket, da steckt zumindest schon mal die Module.symvers drin,
die beim externen Bau benötigt wird. Allerdings gibt es die Header
nicht separat, man muss das Kernelsourcepaket installieren. "make
cloneconfig; make scripts; make prepare" in /usr/src/linux sollten
eigentlich auch unter Linux nicht notwendig
sein, /lib/modules/`uname -r`/build zeigt
auf /usr/src/linux-`uname -r`-obj, da liegt schon eine korrekte .config
drin. Da es aber leider immer noch dumme Kernelmodulbuildsysteme gibt,
die in /usr/src/linux suchen, geht es manchmal nicht anders.

Gruß
Henning

Ähnliche fragen