TIP: Příprava jádra systému Linux zdrojů pro out-of-stromu sestavení modulů jádra
Účel: Mnohokrát budete v situaci, kdy je třeba sestavit out-of-strom moduly do jádra, což znamená, že jádro, které je v současné době běží nemá požadovaný modul (řekněme Squashfs, ndiswrapper, atd.). V takové situaci, člověk potřebuje obvykle ke stažení zdroje někde jinde a pak kompilovat proti chodu jádra. V tomto příspěvku nebudeme mluvit o tom, jak to udělat celý proces, spíše jsem se poukázat na některé tipy a triky, které vám umožní překonat některé běžné chybové zprávy, které dostanete při kompilaci out-of-stromu modulu .
Některé běžné chybové zprávy, které dostanete, když se pokusíte dát příkaz make, jsou následující:
skripty / genksyms / genksyms: Žádný takový soubor nebo adresář
/ Bin / sh: scripts / mod / modpost: nenalezen
Konfigurace jádra je neplatná. include / linux / include / nebo autoconf.h config / auto.conf chybí. Spustit 'make && make oldconfig připravit "na kernel src opravit.
VAROVÁNÍ: Symbol version dump / usr/src/linux-2.6.29/Module.symvers chybí, modul nebude mít žádné závislosti a modversions.
Než budete pokračovat, ujistěte se, že máte nainstalovány zdrojové kódy jádra, proti které se chystáte stavět moduly.
Ve snaze vyřešit některé nebo všechny z výše uvedených chybových zpráv proveďte následující kroky:
# cd /lib/modules/2.6.29-1-686/
# ln -s /usr/src/linux-source-2.6.29 build
# cd /usr/src/linux-source-2.6.29
# make mrproper
# cp /boot/config-$(uname -r) .config
# make oldconfig
# make prepare
# make scripts
a nakonec přejděte do adresáře, kde se vaše zdroje bydliště (není zdroj jádra) a dát příkaz make:
# cd /usr/src/my-graphics-kernel-module-source/
# make clean
# make
Poznámka: Zde předpokládáme, že se snažíte vybudovat jaderný modul proti jádra, kterou používáte. Předpokládejme například, že používáte jádro verze 2.6.29-1-686 a vy se snažíte vytvořit modul pro tuto běžícího jádra.
Další poznámky:
Také pokud máte nainstalován balíček kernel headers pro vaše běžícího jádra pak většinou pravděpodobně nebudete potřebné k provedení výše uvedených kroků. Navíc, pokud máte nainstalován kernel headers pak nemusíte mít nainstalovány zdrojové kódy jádra. Jádro záhlaví balíček je jen podmnožinou balíku kernel.













19.ledna 2011 v 02:35
[...] Chybí, modul nebude mít žádné závislosti a modversions. odkaz vysvětlující mé varování: Příprava jádra systému Linux zdrojů pro sestavování "vnější" z modulů jádra stromu | Debia ... Myslíte si, že tento odkaz je to dobrý tip následovat? to mluví hlaviček, takže si nejsem jistý, už [...]