prvni-linuxove-krucky-slapeme-na-3d-pedal
Software Článek První linuxové krůčky: Šlapeme na 3D pedál

První linuxové krůčky: Šlapeme na 3D pedál | Kapitola 2

Mikulík Jarda

Mikulík Jarda

23. 2. 2004 00:00 62

Seznam kapitol

1. S jakou kartou si pod linuxem zahrajete? 2. Instalace 3. Testy a závěr

To nejhorší (instalaci) už máme za sebou. Fajn... Ale co dál? Jednou z nejčastějších otázek linuxových začátečníků je, jak zprovoznit 3D akceleraci na grafické kartě. Mám pro vás dvě zprávy, dobrou a špatnou. Ta dobrá je, že 3D pod Linuxem chodí (podle tvrzení mnoha linuxáků obvykle o nějaké ty framy rychleji na stejném HW ve stejné aplikaci :-) ), ta špatná je, že není podpora pro všechny karty, které akcelerují pod okenními systémy. Takže jak to vlastně je?

Reklama

V počítači je testovaná karta GeForce4 MX440 AGP 8x. Jak vyzkoušet jestli je akcelerace zapnuta? Zadáním příkazu glxinfo se vypíšou informace o 3D. V několika prvních řádcích je položka direct rendering:. Pokud je u ní hodnota No akcelerace nepracuje. Přesně to se mi vypsalo po instalaci Mandrake 9.2 i Debian 3.0. K nápravě potřebujeme ovladač ze stránek http://www.nvidia.com/object/linux.html a balíček ze zdrojovými texty nainstalovaného jádra (u Mandrake balíček kernel-source*, u Debianu stačí balíček s hlavičkovými soubory kernel-headers*), aby instalátor mohl vytvořit jaderný modul pro příslušnou verzi jádra. Verzi běžícího jádra zjistíte např. příkazem uname -r.

Pro instalaci je třeba vypnout X server. Pokud máte spustěného i grafického správce přihlášení, nestačí použít CTRL+ALT+Delete, protože správce po ukončení X naběhne znovu a tím znovu spustí i XFree. Přepněte se proto na jednu z textových konzol pomocí CTRL+ALT+Fn, kde n je číslo konzoly a přihlašte se jako superuživatel root. U Mandrake je třeba změnit runlevel, aby se správce vypnul. Učiňte tak příkazem init 2. U Debianu můžete spráce ukončit přímo příkazem /etc/init.d/kdm stop - pokud nepoužíváte správce přihlášení KDE, místo kdm dosaďte název správce, který používáte.

Přejděte příkazem cd cesta-kde-je-uložen-ovladač do adresáře, kde máte uložen ovladač nebo si spusťte správce souborů mc a udělejte to v něm. Instalátor spusťte (pokud jste změnili práva na spustitelná, ve správci souborů jednoduše klávesou ENTER nebo vypsáním příkazu na příkazovém řádku - např. ./NVIDIA-Linux-x86-1.0-5336-pkg1.run). Pak už jen odklepávejte Enter, Enter, Enter... Ovladač si vytvoří jaderný modul nvidia.o nebo nvidia.ko - podle toho jestli používáte jádro řady 2.4 nebo 2.6 - který by měl být v adresáři /lib/modules/`uname -r`/kernel/drivers/video. Ovladač pro XFree86 a GLX část ovladače se nakopíruje do příslušných adresářů.

Po instalaci je ještě nutné změnit v konfiguraci X serveru (soubor XF86Config-4, viz. výše) název použitého ovladače, protože firemní se jmenuje nvidia, kdežto ovladač, který je součástí XFree86 se jmenuje nv. Nejrychlejší je udělat to v textovém editoru. V souboru najděte sekci Device, která obsahuje položku Driver "nv" (možná používáte ovladač vesa, pak najděte ten) a přepiště jej na již zmíněný, takže řádek bude vypadat takto: Driver "nvidia". Soubor uložte. Nyní už jen spustit X server nebo správce přihlášení (Mandrake: init 5, Debian /etc/init.d/kdm start.

Pokud jste vše udělali správně, mělo by při startování X serveru objevit přes celou obrazovku logo NVidia. Po přihlášení oveřte, zda akcelerace běží příkazem glxinfo. Akceleraci je možné ověřit také v jednoduchém grafickém testu, který spustíte příkazem glxgears.

Instalace z balíčků u Debianu je také velmi jednoduchá. Přidejte do souboru /etc/apt/sources.list zdroj s balíčky (dobrý zdroj je uveden např. na http://debian.malyjarda.cz). Aktualizujte databázi s dostupnými balíčky (např. apt-get update) a nainstalujte balíčky nvidia-kernel-common a nvidia-kernel-source. V adresáři /usr/src se objeví soubor nvidia-kernel-source.tar.gz, rozbalte jej např. příkazem tar xzf nvidia-kernel-source.tar.gz. Rozbalené soubory najdete v /usr/src/modules/nvidia-kernel. Když v tomto adresáři zadáte příkaz KVERS=verze-jádra KSRC=cesta-na-zdrojáky-jádra debian/rules kdist, vytvoří se vám v adresáři /usr/src balíček s jaderným modulem pro zadanou verzi jádra. Nainstalujte jej příkazem dpkg -i název-balíčku.deb. Pak už jen doinstalujte GLX část ovladače, např. apt-get install nvidia-glx a proveďte změny v XF86Config-4, restartujete X server a hotovo.

Instalace ATI ovladače je podobná. Stáhněte si ze serveru ATI ovladač pro verzi XFree86, kterou používáte. Ovladač je v RPM balíčku. Opět potřebujete balíček se zdrojáky jádra, pro který budete kompilovat jaderný modul (viz. výše). V Madrake a jiných linuxových distribucích založených na RPM, nainstalujete balíček příkazem rmp -Uvh balíček.rpm, pokud dojde k chybě, použijte příkaz rpm -i --force balíček.rpm. U Debianu nejdříve překonvertujte balíček do DEB příkazem alien balíček.rpm a pak nainstalujte pomocí dpkg -i --force-overwrite balíček.deb. Podobně jako u NVidia ovladačů upravte v souboru XF86Config-4 v sekci Device parametr driver "fglrx". Restartujte X server a zkontrolujte pomocí glxinfo, jestli je zapnuta akcelerace. Pokud ne (jako se to stane např. mi u jader, které nemají podporu KT400 a KT600 v režimu AGP 8x), je třeba upravit v souboru /lib/modules/fglrx/build_mod/agpgart_be.c jeden řádek:

  1. najděte řádky
    { PCI_DEVICE_ID_VIA_8377_0,
            PCI_VENDOR_ID_VIA,
            VIA_APOLLO_KT400,
            "Via",
            "Apollo KT400",
            via_generic_setup }, // AGP v2
  2. poslední řádek (v ovladači verze 3.7.0 je to řádek 6073), změňte na:
    via_kt400_setup }, // AGP v2
  3. soubor uložte
  4. pusťte skript make.sh nacházející se ve stejném adresáři, který překompiluje a nainstaluje upravený modul
  5. restartujte X server

Podrobný návod včetně řešení problémů (např. se sadami nForce) s instalací firemních ATI ovladačů najdete na stránce gmpf

Ladění skončilo, je třeba vyzkoušet, jestli trápení s instalací stálo za to... Jdou se pařit hry :-). Seznam aplikací využívající OpenGL najdete třeba na http://www.opengl.org/applications/linux/.

Předchozí
Další
Reklama
Reklama

Komentáře naleznete na konci poslední kapitoly.

Reklama
Reklama