только что попытался установить драйверы 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».