Показать полную графическую версию : Установка драйвера от nvidia
Установил ASP 9.2, потом поставил дрова от nvidia, запустив ./nvidia-installer. Все, установились, прописал их в XF86Config, все работает. Далее решил перекомпилить ядро, немного оптимизировав его. Компилил как обычно: make menuconfig, make dep, make bzImage, make modules, make modules_install. Все, новое ядро готово. В каталоге /lib создался новый каталог /lib/modules/2.4.22-1.2154.nptl.aspcustom/. В grub подсунул новый bzImage. Гружусь... Загрузился. Делаю startx - неудача. Пытаюсь заново установить дрова от nvidia. Перед этим на всякий пожарный, чтоб уж наверняка, переустанавливаю с диска пакет kernel-source. Далее делаю ./nvidia-installer, идет установка, дрова вроде компилятся, но после компиляции вылазит вот такая ошибка:
ERROR: Unable to load the kernel module 'nvidia.o'. This is most likely
because the kernel module was built using the wrong kernel header files.
Please make sure you have installed the kernel header files for your
kernel; on Red Hat Linux systems, for example, be sure you have the
'kernel-source' rpm installed. If you know the correct kernel header
files are installed, you may specify the kernel include path with the
'--kernel-include-path' commandline option.
-> Kernel module load error: ./usr/src/nv/nvidia.o: kernel-module version
mismatch
./usr/src/nv/nvidia.o was compiled for kernel version 2.4.22-1.2154.nptl.asp
while this kernel is version 2.4.22-1.2154.nptl.aspcustom.
Народ. Объясните на пальцах, почему не работает? Почему он ругается, что ./usr/src/nv/nvidia.o был скомпилен для ядра версии 2.4.22-1.2154.nptl.asp, в то время когда я инсталлер запускал под загруженным ядром 2.4.22-1.2154.nptl.aspcustom?? Чо сделать-то? А то уже запарился...
Каким бесом этот инсталлер определяет версию ядра?
Гы... А ты не пробовал НЕ переставлять заново kernel-source??? Нафих ты такое придумал?? :))
Гы... А ты не пробовал НЕ переставлять заново kernel-source??? Нафих ты такое придумал?? :))
Дык можно поподробнее... Чо собственно изменилось когда я переставил kernel-source? Ну перекомпилил ядро. Почистил его от бинарников make clean, make mrproper. Что изменится от того что я переустановлю исходники? Ядро-то ведь я уже перекомпилил. Следовательно имею рабочий образ ядра. А по скольку ядро пересобирал из тех же исходных текстов что шли изначально в дистрибутиве, то каким макаром повлият то что я переустановлю kernel-sources заново???
Что-то не догоняю... :(
Ну дык и как все таки мне дрова-то установить?
Исправлено: Mr Dan, 10:24 26-07-2004
makaveli lcf
26-07-2004, 18:11
делается так = попорядку
nvidia-installer --uninstall
потом (предворительно сохранив конфиг текущего ядра из /usr/src/linux) делете make mrproper в исходниках ядра
потом копируте туда .config (который вы надеюсь сохранили)
make oldconfig
make dep
теперь ставите дрова от nvidia
startx
из-за того, что вы не сделали --uninstall у ва и ругается на неправильное ядро
Дык а если у меня 2 ядра:
1) 2.4.22-1.2154.nptl.asp (дефолтное)
2) 2.4.22-1.2154.nptl.aspcustom (мною пересобранное)
То мне для каждого из них делать nvidia-installer --uninstall, потом (предворительно сохранив конфиг текущего ядра из /usr/src/linux) *делете make mrproper в исходниках ядра
потом копируте туда .config (который вы надеюсь сохранили)
make oldconfig
make dep
теперь ставите дрова от nvidia
startx
???
Ага, вобщем ситуация такая... если перекомпилить ядро (например получим 2.4.22-1.2154.nptl.aspcustom) и под него собрать nvidia драйвер, то все отлично получается - драйвер работает. Но если к примеру потом попробовать загрузить дефолтное ядро (2.4.22-1.2154.nptl.asp) и попробовать заново драйвер собрать, то ругается как и прежде, что драйвер-то был собран под ядро 2.4.22-1.2154.nptl.aspcustom и на этом попытка инсталяции заканчивается :(
Т.е. у меня не получается так сделать чтоб и под одним ядром работали дрова и под другим :( . Или как это сделать если все таки такое возможно???
P.S.
из-за того, что вы не сделали --uninstall у ва и ругается на неправильное ядро
А как именно nvidia-инсталлер определяет под какое ядро он собирался???
Исправлено: Mr Dan, 23:18 26-07-2004
В ASP 9.2 нвидеевские дрова стоят по умолчанию.
Даже при загрузке иксов в место X , белый экран с логотипом nVidia.
Я сначалотоже думал, что они не стоят.
Бррр...
Не знаю как у вас в нвидии, а у нас в Ати мы собираем модуль а когда делаем типа "модуле инсталл" он у нас копирует его в каталог с модулями того ядра под которое он собирался :)) У вас в нвидии разве не так???
Я так понял те надо прям все знать :)) Как там модуля собираются и все такое :)) Дык это вам в программинг прямиком батенька :))
А уж если ты юзер, млин, а не программер, тады - МАНЫ МЛИН ЧИТАЙ!!!!!!!!
Добавлено:
И еще :))
Нафих те два ядра???
Оба ведь работают?? Дык юзай свое и все, в чем грабли то??
В ASP 9.2 нвидеевские дрова стоят по умолчанию.
Даже при загрузке иксов в место X , белый экран с логотипом nVidia.
Я сначалотоже думал, что они не стоят.
Я просто поставил себе более свежую версию :)
И еще :))
Нафих те два ядра???
Оба ведь работают?? Дык юзай свое и все, в чем грабли то??
Дык я вообще допытливый, раз взялся за изучение линуха, значит надо выжать из него максимум. Меня интересует сама возможность такого. Можно или нет?! Думается мне что можно...Если например есть исходники и одного ядра и другого. Хотя не пробовал еще...
makaveli lcf
27-07-2004, 10:25
Mr Dan
ну вот с нвидией такие грабли(((
ставится только под текущее ядро...
а вы так попробуйте (если пытливый говорите):
забекапте куданить nvidia.o
оберите под новое ядро, а старые дрова на место верните = посмотрим что получиться)))
щаз будем на вас эксперименты проводит = только предохранитесь на всякий случай))
Mr Dan
Под каждое ядро есть своя папка с модулями типа
/lib/modules/<kernel version>
Дык вот те нужно два модуля: один под дистрибутивное, второй под твое ядро.
Вот положи старый модуль в /lib/modules/<старое ядро>, а новый модуль в /lib/modules/<новое ядро>, в каждом случае после загрузки под каждым ядром не забудь сделать "depmod -aAv". Должно работать.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.