Ошибка установки nvidia-387: Ошибка! Неверный статус возврата для сборки модуля в ядре:

9

Я пытаюсь установить nvidia-387 на мою свежую Ubuntu 16.04.

После запуска sudo apt-get install nvidia-387я всегда получаю следующие результаты:

Building initial module for 4.13.0-26-generic
Error! Bad return status for module build on kernel: 4.13.0-26-generic (x86_64)

Во время моих поисков я обнаружил множество проблем, указывающих на неправильную версию gcc, но после нескольких попыток я не смог найти способ пойти дальше: после этого обсуждения я попытался с gcc 4.8 / 4-9 / 5.4 / 6 безуспешно.

Любая помощь?

Большое спасибо.

luke035
источник

Ответы:

9

Похоже, что причина в некоторой перестановке заголовков linux в некоторых последних обновлениях ядра linux.

Соответствующее обсуждение: https://devtalk.nvidia.com/default/topic/1028016/linux/patch-for-compiling-v384-98-modules-with-linux-v4-14-9-/

У меня была точно такая же проблема, и я исправил ее, применив патч, предложенный пользователем PGNd в обсуждении выше.

Пошаговые инструкции по ручному редактированию файлов nvidia src в Ubuntu 16.04:

  1. sudo apt-get install nvidia-387 (это не удастся)
  2. sudo nano /usr/src/nvidia-387-387.26/nvidia-uvm/uvm8_va_block.c (вам следует заменить nvidia-387-387.26на версию, которую вы пытаетесь установить.)
  3. Добавьте строку #include <linux/sched/task_stack.h>перед другими операторами включения в начале файла
  4. Запустите, sudo dpkg-reconfigure nvidia-387чтобы восстановить драйвер nvidia
  5. перезагрузка

Это должно работать как временное решение, пока nvidia не выпустит исправление. После этого я смог установить cuda-9.1.

adikus
источник
1
Это сработало отлично, ты спас меня! Большое спасибо!
luke035
Это сработало! Для потомков это также может вызвать цикл входа в систему. Возможно, вы оказались в этой ситуации, пытаясь установить драйверы nvidia (в моем случае, чтобы запустить CUDA 9.1) до полного обновления новой версии 16.04. Первоначально драйверы могли работать (на более старом ядре), но затем обновление до 14.3.x оставило их в этом неисправном состоянии.
Ян Данфорт
0

Ответ @ adikus не сработал для меня. Даже после добавления заголовка ошибка сборки продолжает происходить. Что исправило проблему для меня, было обновление версии драйверов до 410 :

sudo apt-get update
sudo apt-get install nvidia-410

Компиляция для этой версии прошла успешно, и теперь я снова могу играть в игры.

Sergio
источник