05 maart 2006

fglrx met custom kernel

Het met je kernel meebouwen van fglrx als module zoals bij Ndiswrapper werkt niet helemaal. De bestanden in de source zijn namelijk gewoon een beetje kapot. Gelukkig geen onoverkomelijk probleem.

Begin weer door met apt-get het pakket fglrx-kernel-source te installeren, naar de map /usr/src te gaan en het bestand fglrx-kernel-source.tar.gz met tar uit te pakken. Download nu dit bestand dat een aangepaste versie is van de patch die iemand op deze pagina heeft aangeboden. De versie daar is namelijk gemaakt voor een andere versie van het pakket, dus heb ik em even aangepast.

Anyway, kopieer fglrx-kernel-source-kikkum.diff met sudo naar /usr/src/modules/ (deze map wordt aangemaakt na het uitpakken). Geef nu om met dit bestand de fouten in fglrx te fixen de volgende commando's:

$ cd /usr/src/modules $ sudo patch -p0 < fglrx-kernel-source-kikkum.diff

Hierna kun je gewoon het pakket gaan bouwen. Je moet hiervoor wel onlangs een kernel hebben gebouwd en na het bouwen niet aan de bestanden in de map hebben gezeten (ook niet met make-kpkg clean dus!). Geef dan het volgende commando om het pakket te bouwen:

$ cd ../linux $ sudo make-kpkg --append-to-version=.lappum-1-ndis --initrd --revision=1 --added-modules=fglrx-kernel modules_image

Als je wel al aan de bestanden in de linux map had gerommeld kun je voor modules_image ook nog kernel_image erbij zetten en dan komt alles ook wel goed, maar krijg je er gewoon ook een kernel pakketje bij en duurt het dus allemaal wat langer.

Na het maken van het pakketje ging er bij mij nog wel iets fout, maar dat mocht de pret niet drukken, want het pakketje was dus al klaar; wat er nog na gebeurt maakt volgens mij verder niet zo veel uit. Na dit alles dus gewoon even je pakketje installeren met dpkg en klaar ben je!

Nou ja, helemaal klaar nog niet. Ik kwam er namelijk achter dat op deze manier geïnstallerde modules niet gelijk door modprobe aan te zetten zijn. Om dit te kunnen doen (en dus om je fijne nieuwe moduletjes überhaupt te kunnen gebruiken) moet je nog even het commando

$ sudo depmod

geven. Nu zijn je nieuwe modules waaronder bijvoorbeeld fglrx en ndiswrapper te laden en te gebruiken en is iedereen gelukkig en blij in Ubuntu land!

Mede mogelijk gemaakt door: Patch Howto