Ошибка «Заголовки ядра не найдены» при установке драйверов NVIDIA cuda в Ubuntu 16.04 LTS

Ошибка «Заголовки ядра не найдены» при установке драйверов NVIDIA cuda в Ubuntu 16.04 LTS

только что попытался установить драйверы NVIDIA CUDA на Ubuntu 16.04 (не поддерживается), но получаю следующую ошибку:

Установка драйвера не может найти исходный код ядра. Убедитесь, что исходные пакеты ядра установлены и настроены правильно. Если вы знаете, что исходные пакеты ядра установлены и настроены правильно, вы можете передать расположение исходного кода ядра с помощью флага '--kernel-source-path'.

Но заголовки установлены

sudo apt install linux-headers-generic-lts-wily Reading package lists... Done Building dependency tree Reading state information...

Готово linux-headers-generic-lts-wily — это уже новейшая версия (4.4.0.21.22). 0 обновлено, 0 новых установлено, 0 для удаления и 30 не обновлено.

sudo apt install linux-headers-generic Reading package lists... Done Building dependency tree Reading state information... Done

linux-headers-generic уже является новейшей версией (4.4.0.21.22). 0 обновлено, 0 новых установлено, 0 для удаления и 30 не обновлено.

Версия ядра тоже, похоже, правильная.

uname -r 4.4.0-21-generic

Есть идеи?

решение1

Я воспользовался советом Рона и очистил заголовки ядра, а затем просто добавил тот, который требует Nvidia, рядом с текущим: удалить ядра

Удалите все существующие пакеты nvidia:

sudo apt-get remove nvidia* && sudo apt autoremove

Я установил несколько пакетов для компиляции ядра (4.4.0):

sudo apt-get install dkms build-essential linux-headers-generic

Теперь заблокируем и отключим драйвер нового ядра Nouveau:

sudo nano /etc/modprobe.d/blacklist.conf

Вставьте следующие строки в конец blacklist.conf:

blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

Я отключил ядро ​​nouveau:

echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf

Собрать новое ядро

sudo update-initramfs -u

Окончательноreboot

У меня Ubuntu: 16.04.6 с ядром 4.15.0-46-generic

sudo sh cuda_9.0.176_384.81_linux.run --override
sudo service lightdm start
sudo reboot

У меня тоже были проблемы со входом, мне помогло:

sudo ubuntu-drivers autoinstall
sudo reboot

добавьте их в конец файла .bashrc:

судо нано .bashrc

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

это сработало.

решение2

У меня была та же проблема. Решением было отключить безопасную загрузку в BIOS. Для моей материнской платы ASUS процедура была такой: BIOS -> Advanced Mode -> Boot >- Secure Boot -> Key Management -> «Clear Secure Boot keys».

Связанный контент