Драйвер NVIDIA выдает Ubuntu 16.04

8

Я пытаюсь установить последние версии драйверов Nvidia. После установки nvidia-smiне могу найти его.

Графическая карта GeForce 860m, ​​а мой ноутбук работает под Ubuntu 16.04.1 LTS.

Что я сделал до сих пор:

$ sudo apt-get purge nvidia-*
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update
$ sudo apt-get install nvidia-367
$ reboot
$ nvidia-smi
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

Как я могу заставить это работать?

РЕДАКТИРОВАТЬ: Я понял, $ sudo apt-get install nvidia-367вернул ошибку:

Error! Bad return status for module build kernel: 4.4.0-36-generic (x86_64)
Consult /var/lib/dkms/nvidia-367/367.44/build/make.log for more information.

Хотя драйвер на самом деле работает.

make.log содержит такие строки:

Makefile:676: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler

и это:

cc: error: unrecognized command line option ‘-fstack-protector-strong’
scripts/Makefile.build:258: recipe for target '/var/lib/dkms/nvidia-367/367.44/build/nvidia/nv-instance.o' failed
make[2]: *** [/var/lib/dkms/nvidia-367/367.44/build/nvidia/nv-instance.o] Error 1
Makefile:1403: recipe for target '_module_/var/lib/dkms/nvidia-367/367.44/build' failed
make[1]: *** [_module_/var/lib/dkms/nvidia-367/367.44/build] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.4.0-36-generic'
Makefile:81: recipe for target 'modules' failed
make: *** [modules] Error 2
user2682877
источник

Ответы:

5

gcc-4.8 не поддерживал -fstack-protector-strong

gcc-4.9Вместо этого я установил , очистил и переустановил драйвер, и теперь он работает нормально.

$ nvidia-smi
Tue Sep 13 17:31:24 2016
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.44                 Driver Version: 367.44                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 860M    Off  | 0000:01:00.0     Off |                  N/A |
| N/A   54C    P0    N/A /  N/A |      0MiB /  4043MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

Иронично то, что я использовал, gcc-4.8потому что IIRC предыдущая версия CUDA не была совместима с версиями 4.9 или позже.

user2682877
источник
Спасибо, это сработало! Мне пришлось использовать альтернативы обновления sudo --config gcc для переключения с 4.8 на 4.9, потому что я ранее использовал обе версии gcc для некоторых программных проектов и забыл переключиться обратно.
t2k32316