Kompilácia nie je nič strašné treba mať ovšem trošku znalosti vášho hardvéru a taktiež vedieť čo sa od vás kedy chce. Preto by som vás chcel previesť touto tématikou a pomôcť vám aspoň trošku s kompiláciou.
Kompilácia jadra je nevyhnutná, ak máte novší hardvér, ktorý vaša distribúcia nepodporuje a vy viete, že nové či už stabilné alebo vývojové jadro má podporu tohto hardvéru.
Kompilovať samozrejme môžete aj preto, aby ste zmenšili veľkosť jadra a tým zrýchlili jadro. Jednoducho v jadre nemusia byť ovládače, ktoré nepotrebujete.
Tie ktoré používate zriedkavo, alebo je lepšie ak nie sú priamo v jadre, môžete skompilovať ako moduly, ktoré sa dajú za jazdy z jadra odoberať a pridávať príkazmi ako sú modprobe, či insmod.
V dnešnej dobe je najnovšia stabilná rada linuxáckych jadier s označením 2.6, ale bez problémov môžete použiť aj staršie odskúšané 2.4 kové jadra.
Jadro linuxu má aj vlastné internetové stránky z ktorých si ho môžete stiahnuť, alebo môžete ho nájsť aj na slovenských, či českých mirrorov. Tu je stránka odkiaľ si môžete stiahnuť jadro: http://www.kernel.org ...
Na ftp nájdete množstvo súborov a ak ste už rozhodnutý pre najnovšie jadro, môžete si hneď vybrať akým spôsobom si zostavíte jadro pre kompiláciu.
Môžete stiahnuť priamo celé jadro (tar.gz, alebo bz2) súbor, alebo ak máte staršie jadro môžete si stiahnuť patch a ten aplikovať na staršie jadro.
Rozbalenie jadra nie je nič zvláštne:
#tar xvzf linux-2.x.verzia.tar.gz
Ak máte staršiu verziu a chcete aplikovať patch:
#patch < patchfile
Samozrejme môžete aplikovať viacero patchov. Patche môžete aplikovať aj na najnovšie jadro ak chcete nadštandardné funkcie ako je automounting a iné ...
Ako prvý krok musíte jadro nakonfigurovať pred kompiláciou, kde určíte akým spôsobom budete konfigurovať jadro a moduly.
#make mrproper
Pre potvrdzovanie nových funkcií s ponechaním starých skúste:
#make oldconfig
Pre textové ménu:
#make menuconfig
Tu je ukážka ako asi vyzerá menuconfig:
#make xconfig
A ak nemáte XWindow skúste
#make config
Po nakonfigurovaní jadra zadajte sériu príkazov
#make dep - tento príkaz upraví závislosti
#make clean - tento príkaz vyčistí prípadné staré jadro
#make zImage - samotná kompilácia,
#make -j zImage - zrýchlená kompilácia, ovšem zaberá celý procesorový čas.
Ak sa vám podarilo skompilovať jadro bez chybových hlásení, mal by sa vám v adresári arch/i386/boot vytvoriť súbor zImage, čo je vlastne skomprimované jadro.
Ak sa vám nepodarilo skompilovať jadro, tak to nevzdávajte! Skúste sa pozrieť aké chyby boli vypísané a znovu zapnúť napríklad menuconfig (xconfig) a opraviť závadu. A samozrejme spustiť kompiláciu odznovu.
Po skompilovaní jadra musíte ešte skompilovať a nainštalovať moduly. To docielite sériou týchto príkazov:
#make modules #make modules_install
Ak máte najnovšiu sériu jadier 2.6, tak nemusíte ručne skopírovať jadro do adresára boot, ale stačí previesť príkaz:
#make install
Tento príkaz ovšem spôsobí, okrem toho že sa jadro nakopiruje do adresára /boot, sa aj prevedú zmeny s vaším zavádzačom (lilo, alebo grub) ...
Samozrejme je tu ešte aj možnosť vytvoriť si štartovaciu disketu s novým jadrom čo odporučujem začiatočníkom a tým sa vyhnúť tomu, že vám systém nemusí naštartovať.
Ak máte staršie jadro nevyhnete sa tomu, že budete musieť ručne nakopírovať súbor zImage do adresára /boot a editovať súbor /etc/lilo.conf
Tu je príklad zapísaného nového jadra do lilo.conf:
image=/boot/newkernel
label=newkernel
root=/dev/hda7
read-only
image=/boot/vmlinuz
label=DebianLinux
root=/dev/hda7
read-only
other=/dev/hda1
label=Windows_XP
table=/dev/hda
Prvý riadok hovorí o tom, kam sa má uložiť botovací program, ak je tam napríklad len hda bez čísla, to značí, že sa zapíše do MBR. (Master Boot Record)
Další riadok je návestie (meno operačného systému).
Zápis lila sa prevedie príkazom:
#lilo
a môže vyzerať asi takto:
#Added *newkernel
#Added linux
#Added Windows_XP
Ak sa vám podarilo skompilovať jadro tak vám gratulujem, nie je to nič ťažké ale vyžaduje si to veľkú pozornosť hlavne pri konfigurácii a trpezlivosť pri kompilácii.
Pre pridávanie komentárov sa musíte prihlásiť.