Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по Linux (http://forum.oszone.net/forumdisplay.php?f=9)
-   -   Установка драйвера от nvidia (http://forum.oszone.net/showthread.php?t=12587)

Mr Dan 26-07-2004 09:39 66712

Установил 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?? Чо сделать-то? А то уже запарился...
Каким бесом этот инсталлер определяет версию ядра?

bdancer 26-07-2004 10:51 66713

Гы... А ты не пробовал НЕ переставлять заново kernel-source??? Нафих ты такое придумал?? :))

Mr Dan 26-07-2004 11:20 66714

Цитата:

Гы... А ты не пробовал НЕ переставлять заново kernel-source??? Нафих ты такое придумал?? :))
Дык можно поподробнее... Чо собственно изменилось когда я переставил kernel-source? Ну перекомпилил ядро. Почистил его от бинарников make clean, make mrproper. Что изменится от того что я переустановлю исходники? Ядро-то ведь я уже перекомпилил. Следовательно имею рабочий образ ядра. А по скольку ядро пересобирал из тех же исходных текстов что шли изначально в дистрибутиве, то каким макаром повлият то что я переустановлю kernel-sources заново???
Что-то не догоняю... :(
Ну дык и как все таки мне дрова-то установить?

[s]Исправлено: Mr Dan, 10:24 26-07-2004[/s]

makaveli lcf 26-07-2004 18:11 66715

делается так = попорядку
nvidia-installer --uninstall

потом (предворительно сохранив конфиг текущего ядра из /usr/src/linux)  делете make mrproper в исходниках ядра
потом копируте туда .config (который вы надеюсь сохранили)
make oldconfig
make dep

теперь ставите дрова от nvidia
startx
из-за того, что вы не сделали --uninstall у ва и ругается на неправильное ядро

Mr Dan 26-07-2004 18:49 66716

Дык а если у меня 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

???

Mr Dan 27-07-2004 00:13 66717

Ага, вобщем ситуация такая... если перекомпилить ядро (например получим 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-инсталлер определяет под какое ядро он собирался???

[s]Исправлено: Mr Dan, 23:18 26-07-2004[/s]

GoRiLLa 27-07-2004 01:00 66718

В ASP 9.2 нвидеевские дрова стоят по умолчанию.
Даже при загрузке иксов в место X , белый экран с логотипом nVidia.
Я сначалотоже думал, что они не стоят.

bdancer 27-07-2004 01:03 66719

Бррр...
Не знаю как у вас в нвидии, а у нас в Ати мы собираем модуль а когда делаем типа "модуле инсталл" он у нас копирует его в каталог с модулями того ядра под которое он собирался :)) У вас в нвидии разве не так???

Я так понял те надо прям все знать :)) Как там модуля собираются и все такое :)) Дык это вам в программинг прямиком батенька :))

А уж если ты юзер, млин, а не программер, тады - МАНЫ МЛИН ЧИТАЙ!!!!!!!!



Добавлено:

И еще :))
Нафих те два ядра???
Оба ведь работают?? Дык юзай свое и все, в чем грабли то??

Mr Dan 27-07-2004 09:30 66720

Цитата:

В ASP 9.2 нвидеевские дрова стоят по умолчанию.
Даже при загрузке иксов в место X , белый экран с логотипом nVidia.
Я сначалотоже думал, что они не стоят.
Я просто поставил себе более свежую версию :)

Цитата:

И еще :))
Нафих те два ядра???
Оба ведь работают?? Дык юзай свое и все, в чем грабли то??
Дык я вообще допытливый, раз взялся за изучение линуха, значит надо выжать из него максимум. Меня интересует сама возможность такого. Можно или нет?! Думается мне что можно...Если например есть исходники и одного ядра и другого. Хотя не пробовал еще...

makaveli lcf 27-07-2004 10:25 66721

Mr Dan
ну вот с нвидией такие грабли(((
ставится только под текущее ядро...
а вы так попробуйте (если пытливый говорите):
забекапте куданить nvidia.o
оберите под новое ядро, а старые дрова на место верните = посмотрим что получиться)))
щаз будем на вас эксперименты проводит = только предохранитесь на всякий случай))

bdancer 27-07-2004 15:25 66722

Mr Dan
Под каждое ядро есть своя папка с модулями типа
/lib/modules/<kernel version>

Дык вот те нужно два модуля: один под дистрибутивное, второй под твое ядро.
Вот положи старый модуль в /lib/modules/<старое ядро>, а новый модуль в  /lib/modules/<новое ядро>, в каждом случае после загрузки под каждым ядром не забудь сделать "depmod -aAv". Должно работать.


Время: 09:49.

Время: 09:49.
© OSzone.net 2001-