Erreur d'installation nvidia-387: erreur! Mauvais état de retour pour le module construit sur le noyau:

9

J'essaie d'installer nvidia-387 sur mon nouveau Ubuntu 16.04.

Une fois que je lance, sudo apt-get install nvidia-387je me retrouve toujours dans les sorties suivantes:

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)

Au cours de mes recherches, j'ai trouvé beaucoup de problèmes pointant vers une mauvaise version de gcc, mais après plusieurs tentatives, je n'ai pas réussi à trouver le chemin à suivre: après cette discussion, j'ai essayé avec gcc 4.8 / 4-9 / 5.4 / 6 sans aucune chance.

De l'aide?

Merci beaucoup.

luke035
la source

Réponses:

9

Il semble que le problème soit dû à un brassage des en-têtes Linux dans certaines mises à jour récentes du noyau Linux.

Discussion pertinente: https://devtalk.nvidia.com/default/topic/1028016/linux/patch-for-compiling-v384-98-modules-with-linux-v4-14-9-/

J'ai eu exactement le même problème et je l'ai résolu en appliquant le correctif suggéré par l'utilisateur PGNd dans la discussion ci-dessus.

Instructions étape par étape pour l'édition manuelle des fichiers nvidia src sur Ubuntu 16.04:

  1. sudo apt-get install nvidia-387 (cela échouera)
  2. sudo nano /usr/src/nvidia-387-387.26/nvidia-uvm/uvm8_va_block.c (vous devez remplacer nvidia-387-387.26par la version que vous essayez d'installer.)
  3. Ajoutez la ligne #include <linux/sched/task_stack.h>avant les autres instructions include au début du fichier
  4. Exécutez sudo dpkg-reconfigure nvidia-387pour reconstruire le pilote nvidia
  5. Redémarrer

Cela devrait fonctionner comme une solution temporaire jusqu'à ce que nvidia publie un correctif. J'ai pu installer cuda-9.1 après avoir fait cela.

adikus
la source
1
Cela a parfaitement fonctionné, vous m'avez sauvé! Merci beaucoup!
luke035
Ça a marché! Pour la postérité, cela peut également provoquer une boucle de connexion. Vous vous êtes peut-être retrouvé dans cette situation en essayant d'installer les pilotes nvidia (dans mon cas pour faire fonctionner CUDA 9.1) avant qu'une nouvelle installation 16.04 soit entièrement mise à jour. Initialement, les pilotes peuvent sembler fonctionner (sur un noyau plus ancien), mais la mise à jour vers 14.3.x les a laissés dans cet état cassé.
Ian Danforth
0

La réponse de @ adikus n'a pas fonctionné pour moi. Même après avoir ajouté l'en-tête, l'erreur de génération continue de se produire. Ce qui a résolu le problème pour moi, c'était la mise à niveau de la version des pilotes vers 410 :

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

La compilation de cette version a réussi et je peux à nouveau jouer à des jeux.

Sergio
la source