LINUX.ORG.RU

Проблемы с дровами NVidea


0

0

При собирании NVidia_kernel с make install появляется следующее:

You appear to be compiling the NVdriver kernel module with a compiler different from the one that was used to compile the running kernel. This way be perfectly fine, but there are cases where this can lead to unexpected behaviour and system crashed.

If you know what you are doing and want to override this check you can do so by setting IGNORE_CC_MISMATCH.

In any other case, set the CC environment variable to the name of the compiler that was used to compile the kernel.

*** Failed cc sanity check. Bailing out! *** make: *** [gcc-check] error1.

Народ помогите, что делать? Как обойти IGNORE_CC_MISMATCH???

И еще один вопрос. При запуске X сервера он пишет fatal error, что мол не найден screen. Это относится к дровам видео карты или к настройке монитора?


проще ядро перекомпилить

borisych ★★★★★
()

Нормальные люди указали бы хотябы дистр, ядро и откудо оно взялось (стандартное или своё).+Полезно указать, есть ли gcc и какой он версии. Телепаты разбежались. К сожалению.

SteelRat
()

Спасибо всем кто откликнулся! To borisych ядро собиралось, все ок. Проблама с драйверами от NVidia 3123. Ядро 2.5.39 собранное. Дистр Debian 3.0. GCC версии 3.2.

Alian
() автор топика

driver does not support 2.5.x development kernels

BEGEMOT
()

а оно тебе надо -2.5 то ?

anonymous
()

Сегодня пересоберу ядро на 2.4.19.Но вопрос собственно остается открытый.Вот выдержка из FAQ с сайта NVidia:

Q: Compiling the NVdriver kernel module gives this error:

You appear to be compiling the NVdriver kernel module with a compiler different from the one that was used to compile the running kernel. This may be perfectly fine, but there are cases where this can lead to unexpected behaviour and system crashes.

If you know what you are doing and want to override this check, you can do so by setting IGNORE_CC_MISMATCH.

In any other case, set the CC environment variable to the name of the compiler that was used to compile the kernel.

A: You should compile the NVdriver kernel module with the same compiler version that was used to compile your kernel. Some Linux kernel data structures are dependent on the version of gcc used to compile it; for example, in include/linux/spinlock.h:

... * Most gcc versions have a nasty bug with empty initializers. */ #if (__GNUC__ > 2) typedef struct { } rwlock_t; #define RW_LOCK_UNLOCKED (rwlock_t) { } #else typedef struct { int gcc_is_buggy; } rwlock_t; #define RW_LOCK_UNLOCKED (rwlock_t) { 0 } #endif

If the kernel is compiled with gcc 2.x, but gcc 3.x is used when the open files in NVdriver are built (or vice versa), the size of rwlock_t will vary, and things like ioremap will fail.

To check what version of gcc was used to compile your kernel, you can examine the output of:

cat /proc/version

To check what version of gcc is currently in your $PATH, you can examine the output of:

gcc -v

Вот еще один ответ :

Are you running kernel 2.5.39 when you do the NVIDIA_kernel compiling? If not, you will have to be. But if you are, you should be getting "the nVidia driver does not work with 2.5 kernels", because it doesn't.

Unless you applied one of the community patches for 2.5...

Anyway, the reason for the error message you're getting is that the compiler used to compile the kernel (which can be looked at by doing a cat /proc/version) is different than the current compiler (cc -v). These must be the same for anything to work, basically.

Собственно в чем вопрос: "Как узнать каким Gcc собраны дрова Nvidia?" Т.к. ядро я собирал 3.2 версией и 2.4.19 ей же буду собирать.

Alian
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.