LINUX.ORG.RU

Opensuse 15.2не получается собрать драйвер невидии

 ,


0

1

С последним прилетевшим апдейтом ядра драйвер нуво стал жутко артифачить, откатился на предыдущее обновление, но стало меньше разрешение ну хрен сним покрайней мере не пропадет по пол окна. Решил собрать драйве скачал последний с сайта невидии, заголовки ядра установил, запускаю .run он пишет что нужно заблеклистить нуво, соглашаюсь потом он пишет что не может найти нужные конфиги и говорит что создал логи но в логах ничего нет. Куда копать и как собрать драйвер под 15.2!? А то по старинке не получается.,.

карточкаgf8600gtm на ноуте

Не думаю, что такая древняя нвидиа будет поддерживаться новой версией блоба

puffy ★★
()

на сайте нвидиа можно выбрать драйвер под конкретную карту, для твоей это должно быть 340.108

Chord ★★★
()

В добавок к выше написанному про версию драйвера:

А в репозиториях собранного нигде нет?

Для сборки тебе нужно поставить хедеры ядра, компилятор, make и ещё хрен знает что.

anonymous
()
Ответ на: комментарий от Suicide_inc

Спасибо кэп! Но почему-то уже собраных дров невидиии под 15.2 нет. Вот и мучаюсь.

Freiheits-Sender ★★
() автор топика
Ответ на: комментарий от Chord

Его и скачал, однако что-то не так, установка прерывается с ошибками. 0_о

Freiheits-Sender ★★
() автор топика
Ответ на: комментарий от piwww

Сырцы, заголововки и все девел пакеты поставил однако выдает ошибку

ERROR: Neither the '/usr/src/linux/include/linux/version.h' nor the '/usr/src/linux/include/generated/uapi/linux/version.h' kernel header file exists.  The most likely reason  
         for this is that the kernel source files in '/usr/src/linux' have not been configured.

не врублюсь куда копать!?

Freiheits-Sender ★★
() автор топика
Ответ на: комментарий от piwww
# find / -name version.h
/usr/src/linux-5.3.18-lp152.50/arch/x86/math-emu/version.h
/usr/src/linux-5.3.18-lp152.50/include/xen/interface/version.h
/usr/src/linux-5.3.18-lp152.50/include/uapi/linux/dvb/version.h
/usr/src/linux-5.3.18-lp152.50/drivers/net/ethernet/chelsio/cxgb3/version.h
/usr/src/linux-5.3.18-lp152.50/drivers/net/wireless/ath/carl9170/version.h
/usr/src/linux-5.3.18-lp152.50/drivers/net/wireguard/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/preempt/include/generated/uapi/linux/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/preempt/include/config/arch/want/compat/ipc/parse/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/preempt/include/config/suse/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/preempt/include/config/gcc/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/preempt/include/config/clang/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/default/include/generated/uapi/linux/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/default/include/config/arch/want/compat/ipc/parse/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/default/include/config/suse/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/default/include/config/gcc/version.h
/usr/src/linux-5.3.18-lp152.50-obj/x86_64/default/include/config/clang/version.h
/usr/include/elfutils/version.h
/usr/include/linux/version.h
/usr/include/linux/dvb/version.h
/home/usr/include/linux/version.h
/home/usr/include/linux/dvb/version.h
find: ‘/run/user/1000/gvfs’: Отказано в доступе

Вывод find

Freiheits-Sender ★★
() автор топика
Ответ на: комментарий от Freiheits-Sender

В смысле не то? А что тогда тебе надо? Ты хочешь поставить 2 ядра в систему или что?

Ставить систему, которое поддерживает нужное тебе ядро, которое поддерживает нужный тебе блоб или выкладывай деньги на новую карту. А можешь пользоваться открытым драйвером. Больше выбра по контексту нет.

anonymous
()
Ответ на: комментарий от Freiheits-Sender

Блин...

-> Performing CC sanity check with CC="/usr/bin/cc".
-> Kernel source path: '/usr/src/linux'
-> Kernel output path: '/usr/src/linux'
-> Performing rivafb check.
-> Performing nvidiafb check.
-> Performing Xen check.
-> Performing PREEMPT_RT check.
-> Cleaning kernel module build directory.
   executing: 'cd ./kernel; /usr/bin/make clean'...
-> Building NVIDIA kernel module:
   executing: 'cd ./kernel; /usr/bin/make module SYSSRC=/usr/src/linux SYSOUT=/usr/src/linux NV_BUILD_MODULE_INSTANCES='...
   NVIDIA: calling KBUILD...
   make[1]: Entering directory '/usr/src/linux-5.3.18-lp152.50'
   test -e include/generated/autoconf.h -a -e include/config/auto.conf || (		\
   echo >&2;							\
   echo >&2 "  ERROR: Kernel configuration is invalid.";		\
   echo >&2 "         include/generated/autoconf.h or include/config/auto.conf are missing.";\
   echo >&2 "         Run 'make oldconfig && make prepare' on kernel src to fix it.";	\
   echo >&2 ;							\
   /bin/false)
   
     ERROR: Kernel configuration is invalid.
            include/generated/autoconf.h or include/config/auto.conf are missing.
            Run 'make oldconfig && make prepare' on kernel src to fix it.
   
   Makefile:612: include/config/auto.conf: No such file or directory
   make[1]: *** [Makefile:690: include/config/auto.conf] Error 1
   make[1]: Leaving directory '/usr/src/linux-5.3.18-lp152.50'
   NVIDIA: left KBUILD.
   nvidia.ko failed to build!
   make: *** [Makefile:202: nvidia.ko] Error 1
-> Error.
ERROR: Unable to build the NVIDIA kernel module.
ERROR: Installation has failed.  Please see the file '/var/log/nvidia-installer.log' for details.  You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com.
Freiheits-Sender ★★
() автор топика
Ответ на: комментарий от Freiheits-Sender

Новая карта это один из вариантов. А эти варианты:

  1. система, типа какой-нибудь Дебиан со старым (нужным тебе ядром);

  2. кушать кактус (свободный драйвер)?

anonymous
()
Ответ на: комментарий от Freiheits-Sender

Значит ставь систему со старым ядром, и ставь туда блоб. Других вариантов у тебя нет. Хороший вариант, это Дебиан, если его ядро подойдёт тебе.

anonymous
()
Ответ на: комментарий от Freiheits-Sender

Выставить для компилятора текущее используемое ядро, если это не было чем-нибудь сделано ранее. Видимо, так:

ln -s /usr/src/linux-5.3.18-lp152.50 /usr/src/linux

ls -lah /usr/src/linux/include/linux/version.h /usr/src/linux/include/generated/uapi/linux/version.h
NDfan
()
Ответ на: комментарий от NDfan

На моей линюхе,

Твоя линюха соответствует линюхе ТСа?

anonymous
()
Ответ на: комментарий от piwww

Судя по темам в процессе гугления в 15.2 у всех обладателей карт невидии проблемы со стартом драйверов.

ЗЫ Накатываю Телегу на мобильник.

Freiheits-Sender ★★
() автор топика
Последнее исправление: Freiheits-Sender (всего исправлений: 1)

С последним прилетевшим апдейтом ядра

Откуда апдейт, из «основной» репы или из OBS (http://download.opensuse.org/repositories/Kernel:/stable/standard/)?

Если второй, то у меня плохие новости: Компания NVidia сообщила о задержке поставки драйверов для Linux 5.9

собраных дров невидиии под 15.2 нет

Есть! https://download.nvidia.com/opensuse/leap/15.2/

MumiyTroll ★★★
()
Ответ на: комментарий от NDfan

Нет, очевидно же.

И что дальше, мозговой штурм не проводить, если тема буксует? Полно те.

NDfan
()
Ответ на: комментарий от Freiheits-Sender

А вот эти страницы знакомы, кстати?

SuSE users: please read the SuSE NVIDIA Installer HOWTO before downloading the driver.

https://www.nvidia.com/en-us/drivers/linux-display-ia32-1001409/

Сама ссылка не робит, но вот инструкции схожего контекста:

http://old.open-suse.ru/modules/smartsection/item.php?itemid=18

https://www.daneel.franken.de/dell.xeon.computer.home.2009/cuda/nvidia-instal...

1. Исходники ядра (Kernel sources) должны быть установлены и настроены. Обычно это означает установку 'kernel-source', 'make' и 'gcc' пакеты с помощью Yast2. 2. Используйте инсталлятор nvidia для 173.14.12 3. sh NVIDIA-Linux-x86-173.14.12-pkg1.run -q 4. Настройте X.Org с помощью 5. sax2 -r -m 0=nvidia (0 это цифра, а не буква!)

Т.е. если пакеты вида devel и headers (если таковые существуют) установлены, то видимо надо поплотнее в сторону работы sax2 смотреть, (или его современной альтернативы).

NDfan
()
Ответ на: комментарий от MumiyTroll

Он не подходит, так как собран под другое ядро.

Вот тут уже проверили OpenSUSE Leap 15.2 после установки legacy NVIDIA дров не загружается система

Freiheits-Sender ★★
() автор топика
Последнее исправление: Freiheits-Sender (всего исправлений: 1)
Ответ на: комментарий от MumiyTroll

плохие новости

На свежей карте 3d работает на 5.9 ядре. Только cuda отвалилась.

Так что у ТС проблема в старой карте и староv драйвере.

anonymous
()

Вообщем опять 25!

Как это побороть!?

ERROR: Neither the '/usr/src/linux/include/linux/version.h' nor the '/usr/src/linux/include/generated/uapi/linux/version.h' kernel header file exists. The most likely reason for this is that the kernel source files in '/usr/src/linux' have not been configured.

Все нужные source и devel пакеты установлены.

Freiheits-Sender ★★
() автор топика
Ответ на: комментарий от Freiheits-Sender

Должно вообще-то уметь работать. Потому как с 5.9+ ядром уже не будет. Тебе надо и kernel sources и kernel devel пакеты, как они в сусе называются я не знаю.

Nvidia 173.14 и сырцы ядра

Правда то дело дней далёких и ещё большее легаси.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 2)
Ответ на: комментарий от Freiheits-Sender

Пакеты

Посмотрел Yast-ом, тебе точно надо kernel-source и kernel-devel. Попробуй их поставить и собрать, о результатах отпишись.

peregrine ★★★★★
()
Ответ на: Пакеты от peregrine

Эти пакеты и стояли. Но, не знаю что я сделал, решил я через яст2 переустановить эти пакеты, за одно увидел что куча обновлений прилетела включая и ядро, а так же много других компонентов, установил, ребутнулся и думаю дай-ка я попробую собрать драйвер снова, и... он собрался, гад. Что я сделал до сих пор не пойму, до этого ни в какую. O_о

Freiheits-Sender ★★
() автор топика
Последнее исправление: Freiheits-Sender (всего исправлений: 1)
Ответ на: комментарий от Freiheits-Sender

Может они от разных версий ядра были? Какое-то обновление прервалось и всё, но часть пакетов успели встать, а часть в кеше так и болтались.

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