navody:fc6jadro

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
navody:fc6jadro [2007/04/06 17:30] – oddelena kompilace z rpm a z tar.gz covexnavody:fc6jadro [2022/11/14 12:25] (aktuální) – upraveno mimo DokuWiki 127.0.0.1
Řádek 88: Řádek 88:
   * Přečtěte si kapitolu [[navody:fc6obsah#Obecné poznámky]].   * Přečtěte si kapitolu [[navody:fc6obsah#Obecné poznámky]].
  
-Samotný překlad jádra vyžaduje poměrně hluboké znalosti nejen z oblasti //Linux//u ale také hardwaru. Jestliže Vám pojmy jako //TCP/IP//, //PCI// nebo //x86// nic neříkají nebo nevíte, jaký má Váš počítač //CPU// a zvukový čip, překlad jádra se Vám nejspíše napoprvé nepodaří. Nicméně následující postup je relativně bezpečný a není jím co zkazit. Úspěšné zkompilování jádra je tedy otázkou Vaší trpělivosti a času, který máte k dispozici.\\+Samotný překlad jádra vyžaduje poměrně hluboké znalosti nejen z oblasti //Linux//u ale také hardwaru. Jestliže Vám pojmy jako //TCP/IP//, //PCI// nebo //x86// nic neříkají nebo nevíte, jaký má Váš počítač //CPU// a zvukový čip, překlad jádra se Vám nejspíše napoprvé nepodaří. Nicméně následující postup je relativně bezpečný a není jím co zkazit. Úspěšné zkompilování jádra je tedy otázkou Vaší trpělivosti a času, který máte k dispozici. 
 +\\ 
 +Pokud chcete provádět překlad jádra, musíte mít k dispozici zdrojové kódy jádra a nástroje potřebné pro samotný překlad((Vedle pojmu "překlad" se také v této souvislosti můžete setkat s pojmem "kompilace" - jedná se ekvivalenty.)). 
 +\\ 
 +=== Nástroje pro překlad jádra ===
  
-=== Příprava === +Nástroje potřebné pro překlad jádra jsou obsaženy balíčku vývojových nástrojů. Tento balíček nainstalujete pomocí
-Pokud chcete provádět překlad jádra, musíte mít k dispozici zdrojové kódy jádra a nástroje potřebné pro samotný překlad((Vedle pojmu "překlad" se také této souvislosti můžete setkat s pojmem "kompilace" - jedná se ekvivalenty.)).\\+
  
-== Zdrojové kódy jádra ze src.rpm ==+  yum -y groupinstall "Development Tools"
  
-Můžete použít **zdrojové kódy jádra připravené v rámci projektu //Fedora Core//**Toto jádro je modifikované pro potřeby //Fedora Core// a obsahuje některé úpravy oproti tzv. vanila jádru.\\+=== Jádro ze src.rpm ===
  
-Nainstalujte rpm-build sestavovaci nastroj pro rpm.+**Poznámka:** Níže uvedený postup byl převzat z [[http://www.mjmwired.net/resources/mjm-fedora-fc6.html#kernelsrc |www.mjmwired.net]]. 
 +\\ 
 +Pro překlad jádra můžete použít **zdrojové kódy připravené v rámci projektu //Fedora Core//**. Toto jádro je modifikované pro potřeby //Fedora Core// a obsahuje některé úpravy oproti tzv. vanila jádru. Překlad těchto zdrojových kódů je nesrovnatelně jednodušší než překlad vanila jádra. 
 +\\ 
 +Nejprve nainstalujte balíček ''rpm-build''. Tento balíček obsahuje skripty a programy, které se používají pro tvorbu balíčků.
  
   yum -y install rpm-build   yum -y install rpm-build
  
-**Poznámka:** Níže uvedený postup byl převzat z [[http://www.mjmwired.net/resources/mjm-fedora-fc6.html#kernelsrc |www.mjmwired.net]].\\+Proveďte aktualizaci jádra Vašeho systému.
  
   yum -y update kernel   yum -y update kernel
  
-Tímto provedete aktualizaci jádra. Restartujte počítač, abyste "natáhli" nové jádro. Po té zadejte do příkazové řádky+Restartujte počítač, abyste "natáhli" nové jádro. Po té vytvořte adresář ''/opt/kernel'' a nastavte ho jako pracovní.
  
   mkdir /opt/kernel   mkdir /opt/kernel
   cd /opt/kernel   cd /opt/kernel
  
-Výše uvedené příkazy vytvoří adresář ''/opt/kernel'' a nastaví ho jako pracovní.+Do adresář''/opt/kernel'' stáhněte soubor ''kernel-verze_jadra.src.rpm'', který obsahuje zdrojové kódy.
  
   yum install yum-utils   yum install yum-utils
   yumdownloader --source kernel --enablerepo updates-source   yumdownloader --source kernel --enablerepo updates-source
  
-Tímto stáhnete do adresáře ''/opt/kernel'' soubor ve tvaru ''kernel-verze_jadra.src.rpm'', který obsahuje zdrojové kódy. Tento soubor nainstalujete pomocí+Tento soubor nainstalujete pomocí
  
   rpm -ivh kernel-verze_jadra.src.rpm   rpm -ivh kernel-verze_jadra.src.rpm
  
 +Nyní je možné přistoupit k samotnému překladu jádra. Před samotným překladem je možné provést ruční editaci konfiguračního souboru ''kernel-verze_jadra-architektura.config''. Konfigurační soubor bohužel neobsahuje nápovědu pro jednotlivé položky, což činí případnou modifikaci souboru ''kernel-verze_jadra-architektura.config'' poněkud problematickou.
  
-== Zdrojové kódy jádra z kernel.org (tzv. vanila) ==+   gedit /usr/src/redhat/SOURCES/kernel-verze_jadra-architektura.config
  
-Druhou možností je stáhnout **zdrojové kódy vanila jádra** ve formě  '.gz' popř. '.bz2' souborů přímo na stránkách [[http://www.kernel.org]]. Tyto komprimované soubory mají velikost 40 - 50 //MB// v závislosti na použitém komprimačním formátu a verzi jádra.\\+Samotnou kompilaci zdrojových kódů jádra pak spustíte pomocí příkazů
  
-Stáhněte příslušný archiv z [[http://www.kernel.org]].+   cd /usr/src/redhat/SPECS 
 +   rpmbuild -bb --target architektura kernel-2.6.spec 
 + 
 +Výsledný //rpm// balíček pak naleznete v adresáři ''/usr/src/redhat/RPMS/architektura/''
 + 
 +** Poznámka: ** Architekturu Vašeho počítače zjistíte pomocí příkazu ''uname -m''
 + 
 +=== Jádro z www.kernel.org (tzv. vanila jádro) === 
 + 
 +Druhou možností je stáhnout **zdrojové kódy vanila jádra** ve formě  '.gz' popř. '.bz2' souborů přímo na stránkách [[http://www.kernel.org]]. Tyto komprimované soubory mají velikost 40 - 50 //MB// v závislosti na použitém komprimačním formátu a verzi jádra. 
 +\\ 
 +Stáhněte příslušný soubor se zdrojovými kódy ze stránek [[http://www.kernel.org]].
  
 Přesuňte se do adresáře ''/usr/src/kernels''. Přesuňte se do adresáře ''/usr/src/kernels''.
Řádek 148: Řádek 167:
 Původní soubor se zdrojovými kódy vanila jádra pak můžete smazat pomocí příkazu Původní soubor se zdrojovými kódy vanila jádra pak můžete smazat pomocí příkazu
  
-  rm verze_jadra.tar.*+  rm -f verze_jadra.tar.*
  
-**Poznámka:** Pokud budete chtít použít patche, aplikujte je pouze na vanila jádro. Jestliže používáte jádro upravené pro potřeby //Fedora Core// ((Jedná se o jádra obsažená v distribuci nebo o jádra stažená z repozitářů.)), mohla by aplikace patchů vést k problémům. Obecně platí, že je jednodušší stáhnout nejakutálnější verzi jádra, která již obsahuje případné patche.\\ +**Poznámka:** Pokud budete chtít použít patche, aplikujte je pouze na vanila jádro. Jestliže používáte jádro upravené pro potřeby //Fedora Core//((Jedná se o jádra obsažená v distribuci nebo o jádra stažená z repozitářů.)), mohla by aplikace patchů vést k problémům. Obecně platí, že je jednodušší stáhnout nejakutálnější verzi jádra, která již obsahuje případné patche. 
- +\\ 
-== Nástroje pro překlad jádra == +Nyní následuje samotný překlad jádra. Přesuňte se do adresáře ''/usr/src/kernels/verze_jadra'', který obsahuje zdrojové kódy jádra.
- +
-Nástroje potřebné pro kompilaci jádra jsou obsaženy v balíčku vývojových nástrojů. +
- +
-  yum -y groupinstall "Development Tools" +
- +
- +
- +
-=== Překlad jádra ze src.rpm === +
- +
-FIXME +
- +
-Rucni editace konfiguracniho souboru: +
- +
-   gedit /usr/src/redhat/SOURCES/kernel-2.6.20-i686.config +
- +
-Kompilace: +
- +
-   cd /usr/src/redhat/SPECS +
-   rpmbuild -bb --target i686 kernel-2.6.spec +
- +
- +
-Vysledné RPM pak naleznete v adresáři /usr/src/redhat/RPMS/i686/ +
- +
- +
-=== Překlad jádra z kernel.org === +
- +
-Nyní je možné přistoupit k samotnému překladu jádra. Přesuňte se do adresáře ''/usr/src/kernels/verze_jadra'', který obsahuje zdrojové kódy jádra.+
  
   cd /usr/src/kernels/verze_jadra   cd /usr/src/kernels/verze_jadra
Řádek 195: Řádek 187:
   Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [Y/n/?]   Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [Y/n/?]
  
-Na jednotlivé otázky odpovídáte ''Y'' (ano), ''n'' (ne). Jestliže si odpovědí nejste jisti, zadejte ''?'' a u většiny položek se Vám zobrazí podrobnější popis. V řadě případů Vám bude nabídnuta ještě další možnost - ''m''. Pomocí této volby nebude odpovídající část kódu zapracována přímo do jádra, ale bude zkompilována jako modul.\\+Na jednotlivé otázky odpovídáte ''Y'' (ano), ''n'' (ne). Jestliže si odpovědí nejste jisti, zadejte ''?'' a u většiny položek se Vám zobrazí podrobnější popis. V řadě případů Vám bude nabídnuta ještě další možnost - ''m''. Pomocí této volby nebude odpovídající část kódu zapracována přímo do jádra, ale bude přeložena ve formě modulu.\\
 Nastavení jádra pomocí ''config'' je téměř nadlidský úkol - k jednotlivým otázkám se není možné vracet a každá chyba tak znamená, že je třeba celé martýrium opakovat od začátku. Navíc není možné odpovědět pouze na část otázek, odpovědi uložit a pokračovat později. Z tohoto důvodu je vhodnější použít grafické nádstavby ''menuconfig'' nebo ''gconfig''. Nastavení jádra pomocí ''config'' je téměř nadlidský úkol - k jednotlivým otázkám se není možné vracet a každá chyba tak znamená, že je třeba celé martýrium opakovat od začátku. Navíc není možné odpovědět pouze na část otázek, odpovědi uložit a pokračovat později. Z tohoto důvodu je vhodnější použít grafické nádstavby ''menuconfig'' nebo ''gconfig''.
  
Řádek 235: Řádek 227:
  
 Po restartování počítače by se v nabídce zavaděče //GRUB// měl objevit řádek, který reprezentuje Vámi přeložené jádro.  Po restartování počítače by se v nabídce zavaděče //GRUB// měl objevit řádek, který reprezentuje Vámi přeložené jádro. 
- 
  
 ===== ===== ===== =====
 [[navody:fc6obsah|Hlavní stránka]] [[navody:fc6obsah|Hlavní stránka]]
  • Poslední úprava: 2022/11/14 11:09
  • (upraveno mimo DokuWiki)