ubuntuusers.de

Kernel für git bisect kompilieren

Status: Ungelöst | Ubuntu-Version: Kubuntu 12.10 (Quantal Quetzal)
Antworten |

Bzzz

Anmeldungsdatum:
12. Oktober 2008

Beiträge: Zähle...

Hi,

für einen alten Bug (USB-Performance seit 3.2.0-22-generic) will ich nun endlich mal den angeforderten bisect erledigen. Natürlich hab ich das noch nie gemacht und kriegs deshalb nicht hin... 😬

http://wiki.ubuntuusers.de/Kernel/Kompilierung beschreibt ja so in etwa den Weg, allerdings scheints durch das Auschecken via git einige Änderungen zu geben. Aber der Reihe nach...

Quelle hab ich nach https://wiki.ubuntu.com/Kernel/KernelBisection in ~/kernelbuild/ubuntu-precise/ abgelegt. Nach git bisect start <bad> <good>" kommt aber nicht sowas wie "Bisecting: 162 revisions left to test after this (roughly 7 steps)", sondern:

1
2
3
git bisect start Ubuntu-3.2.0-22.35 Ubuntu-3.2.0-21.34 
Bisecting: a merge base must be tested
[02905906ddc049720ded93ded03bbc2652f4646a] Linux 3.2.13

Warum auch immer der jetzt 3.2.13 heißt, wenn ich doch zwischen 3.2.0-21 und 22 testen will.

Das File debian.master/changelog, in dem ich dann was eintragen soll, find ich nur in /usr/src/linux-source-3.2.0/debian.master/changelog. Korrekt? Ich hab die erste Zeile dann in linux (3.2.0-24.39)~usb3 precise; urgency=low geändert.

Nächster Schritt: "Now build the kernel."

...ja danke. Der verlinkte Artikel fängt im Prinzip mit "Building the kernel is quite easy. Change your working directory to the root of the kernel source tree and then type the following commands:

fakeroot debian/rules clean fakeroot debian/rules binary-headers binary-generic" an.

1
2
fakeroot debian/rules clean
/usr/bin/fakeroot: line 178: debian/rules: No such file or directory

(sudo vorndran hilft auch nicht) Irgendwie ists verständlich, da es ja keinen debian-Ordner im lokalen Verzeichnis gibt, sondern wohl nur in /usr/src/. Aber wenn ichs dort ausführe, wird der doch mit den dort vorhandenen Daten kompilieren, egal, was ich bei mir in ~/kernelbuild/ubuntu-precise/ liegen hab. ...oder?

Mit der Anleitung nach Ubuntu-Art aus dem Wiki hier hab ich gestern schon einige Male einen Kernel gebaut. Als .config hab ich die von 3.2.0-21 genommen und make oldconfig ausgeführt (oder auch mal nicht). Das Script stoppt bei "VESA VGA graphics support (FB_VESA) [N/y/?] (NEW)", was ich mit y beantwortet hab, und "Realtek RTL8712U AP code (R8712_AP) [N/y/?] (NEW)", welchem ich auch ein yes gegeben hab. localmodconfig hab ich nicht ausprobiert, werd ich aber bis zur ersten Antwort mal testen.

Jedenfalls kompiliert das alles wunderbar durch, und wenn man dann nach sudo make install mit diesem Kernel bootet, dann zuckt schlussendlich das Bild zweimal und man kriegt keine grafische Oberfläche. X aus ner tty zu starten gibt dann Gemecker, weil irgendwas mit vesa und fbdev nicht gefunden wird. Und /lib/modules/3.2.13/modules.dep taucht auch vielfach als missing auf - höchstwahrscheinlich, weils den Ordner /lib/modules/3.2.13 überhaupt nicht gibt. Nehm ich den von 3.2.0-21, gibts genauso oft irgendwelche Meldungen, weil xyz.ko im falschen Format ist. An der Front komm ich also auch nicht weiter...

Antworten |