Klątwa PARAVIRT_OPS
Dla tych, którzy próbują samodzielnie kompilować sterowniki NVIDII dla kernela powyżej wersji 2.6.2X, powyższy parametr PARAVIRT_OPS jawi się w nocnych koszmarach i goni ich z włączoną kosiarką do trawy. Tak, w Debianie są problemy z kompilowaniem sterowników, które postanowiły sprawdzać i uzależnić swoją dalszą kompilację od pewnych warunków. Pisałem o tym pewnym sposobie wcześniej, pisał o tym Hadret, a ja mam kolejną poradę, najprostszą chyba z możliwych.
Zaczynamy standardowo, czyli musimy posiadać wiadome sprawy – paczki build-essential, linux-headers-`uname -r`, ściągnięte sterowniki NVIDII. Sterowniki kopiujemy sobie do np. /usr/src/, rozpakowujemy (u mnie sterowniki to plik NVIDIA-Linux-x86-100.14.11-pkg1.run) :
$#cd /usr/src/
$#chmod 755 NVIDIA-Linux-x86-100.14.11-pkg1.run
$#./NVIDIA-Linux-x86-100.14.11-pkg1.run -x
Owieramy do edycji ulubionym edytorem plik :
$#joe NVIDIA-Linux-x86-100.14.11-pkg1/usr/src/nv/Makefile.kbuild
Znajdujemy fragment :
EXTRA_CFLAGS += -I$(src)
EXTRA_CFLAGS += -Wall -Wimplicit -Wreturn-type (…)
Poniżej tego fragmentu wklejamy :
PARAVIRT_OPS := $(shell grep "D paravirt_ops" /boot/System.map-$(shell uname -r) | colrm 9)
EXTRA_LDFLAGS := --defsym paravirt_ops=0x$(PARAVIRT_OPS)
(uwaga : \-\-defsym a nie jedno – jakby się mogło wydawać)
Zapisujemy, wychodzimy z edycji i kompilujemy :
$#./NVIDIA-Linux-x86-100.14.11-pkg1/nvidia-installer
Powinno się udać – ew. szukaj co poszło nie tak w /var/log/nvidia-installer.





9 sierpnia 2007 o 23:04
Nie podoba mi się bo nie jest to Debian-Way. W Debian-Way instalujesz sterowniki z repozytoriów – niezależnie od posiadanego kernela. W wolnej chwili planuję przełożyć na polski i ukraść na bloga to. U mnie działa (:
10 sierpnia 2007 o 12:19
Z małymi zgrzytami
ale zadziałało. Metoda bardzo szybka i prosta.
10 sierpnia 2007 o 18:43
Może nie Debian-Way, ale :
- działa,
- jak ktoś lubi sobie kompilować, to sobie skompiluje wg. swoich potrzeb,
- jak ktoś nie ma w repozytorium najnowszych sterowników, w ten sposób sam sobie je wprowadzi w system,
Debianowcy nie muszą mieć klapek na oczach, lecz mogą być otwarci na wszelkie możliwości wpływania na pracę i komponenty systemu
10 sierpnia 2007 o 19:46
To nie tyle kwestia klapek, co wygody. Wygodniej mi użyć do instalacji typowo debianowych narzędzi i nie robić sobie bałaganu w systemie. Nie wspomnę o tym, że po instalacji nowego kernela, musisz te operacje powtórzyć, a wracając do starego, nie będziesz miał wsparcia 3D. Instalacja via debian-way rozwiązuje również te niedogodności
10 sierpnia 2007 o 19:47
@up: oczywiście po instalacji nowego kernela również musisz przeinstalować sterowniki od nvidii, tylko robi się to szybciej i bez bałaganienia (:
10 sierpnia 2007 o 22:52
Jednak do końca sterowniki tak zainstalowane u mnie nie działają. Nie odpala się Compiz oraz gra Chromium – tyle jak na razie sprawdziłem. W obydwóch przypadkach konsola zwraca błąd, że nie można znaleźć modułu GL.
13 sierpnia 2007 o 14:41
No to zmienię teraz swoje zeznania.
Instalowałem sterowniki w wersji legacy i za pierwszym podejściem były to serii 7xxx. Na nich nie wykrywało GL. Spróbowałem ze sterownikami serii 9xxx i wszystko teraz działa jak należy.