Forsida

Temaer

Sjangere

4 steg til kompilering av Linux

Snarveier:
[ « Forrige ] [ Neste » ]

Tema: Programvare; sjanger: Artikler
Skrevet av Andreas Nordal den 28. februar 2007 kl 01:39:09; Kommentarer: 0

Hvis du lurer på hva det er å kompilere, så bør du lese det f.eks. på wikipedia først. Dette kan forresten virke litt tungt for en nybegynner.

Hvorfor kompilere Linux?
Dette er stort sett noe for spesielt interesserte, og ikke noe man gjøre. Linux er altså kjernen (hovedprogrammet) i de operativsystemene som distribueres av Linux-distributørene. Distribusjonene er satt sammen slik at de skal funke på den vanligste maskinvaren som brukes der ute, og tilfredsstille flest mulige brukere. Disse Linuxene støtter en hel masse funksjoner og maskinvare som den enkelte brukeren aldri får bruk for. Linux er neppe alene om dette. Når du kompilerer din egen Linux-kjerne får du et hav av valg som lar deg tilpasse den til akkurat din maskinvare, og ditt bruk. Trenger du støtte for 32 prosessorer og filer på 2TB? Ved å kutte ned på funksjonalitet blir kjernen mindre og raskere. Jeg har prøvd selv og det merkes!
Drivere i Linux er enten en del av kjernen (helst) eller separate filer (moduler) som lastes inn i minnet ved behov. Moduler kompileres samtidig med kjernen, men kan også legges til i ettertid med programmet "modprobe". Hvis din favorittdistro ikke støtter maskinvaren din, så vil en rekompilering kunne fikse dette, så sant driverne som du trenger følger med Linux-kildekoden.

Prosedyren:
Her er det litt forskjellige prosedyrer avhengig av om man har versjon 2.2, 2.4 eller 2.6. Dette handler om 2.6-versjonen.

Å kompilere Linux er ikke så forskjellig fra den vanlige "./configure && make && make install"-prosedyren for kompilering og installering av andre programmer. Du laster ned kildekoden fra kernel.org eller en speilside, pakker den ut, går inn i mappa og åpner konsollen der (f.eks. ved å trykke F4 i Konqueror).

1) Før vi kompilerer må vi konfigurere. Dette kan gjøres på 5 måter:
make config
make oldconfig
make menuconfig
make gconfig
make xconfig

Det er ingen ting i veien for å bruke flere av metodene etter hverandre. Du må ta stilling til et hav av valg, og det er vanligvis dette som tar lengst tid. Dette dreier seg i grove trekk om å velge om hver funksjonalitet skal kompileres inn i kjernen, som modul eller ikke kompileres i det hele tatt. Hvis du har kompilert en annen kjerneversjon før, ta vare på ".config"-fila og bruk oldconfig til å tilpasse den. Deretter bruker du xconfig til å finpusse den hvis du har Qt, eller gconfig hvis du har GTK.

2) make
Dette kan også ta litt tid. Her skjer kompileringen av både kjerne og moduler.

3) make modules_install
Kopierer eventuelle moduler til /lib/modules. Krever root-rettigheter

4) cp arch/i386/boot/bzImage /boot/minkjerne-2.6.20
Kopier den nye kjernen din til /boot og kall den hva du vil. Det er lurt å ikke overskrive den gamle kjernen, i tilfelle ikke alt virket på første forsøk, men da må du også legge den nye kjernen din som eget alternativ i oppstartslasteren. Eventuelt kan du villede oppstartslasteren med en symlink.

Linux er et av få operativsystemer som er aktuelle å kompilere for en vanlig hjemmebruker. Men hva er vel mer nerdete enn Linux og kompilering? Hvis du får til dette, kan ingen lenger kalle deg nybegynner på data. Lykke til.

Kommentarer (0)

Din kommentar

Navn:
[url] og [url tekst] kan brukes for å lage lenker.
Gjenta: VIRKER IKKE