web-dev-qa-db-fra.com

L'installation des pilotes Nvidia avec pkg1.run se termine par "no Version.h found"

J'ai beaucoup lu et essayé beaucoup - rien ne fonctionnait pour moi.

J'ai un Dell Inspiron 8200 (1600x1200) avec un Geforce MX440 Mobile. L'installation du pilote de manière "facile" (Sudo apt-get install nvidia-current) me laisse coincé avec une résolution infime non modifiable (1024x768 ou 800x600). Alors je suis allé à la dure:

  • Sudo apt-get update
  • Sudo apt-get dist-upgrade
  • liste noire du nouveau pilote
  • redémarré
  • téléchargé et exécutez (Sudo sh ...) le fichier Nvidia 96 se terminant par pkg1.run, qui est le bon fichier pour moi lorsque je lis quelque part.

Cela a conduit à une erreur:

ERROR: The kernel header file
'/lib/modules/3.08.0-35-generic/build/include/linux/version.h' does
not exist. The most likely reason for this is that the kernel source
files in '/lib/modules/3.08.0-35-generic/build' have not been
configured.

Comment puis-je configurer les fichiers sources du noyau? Il n'y a rien comme Sudo make-prepare ou Sudo get-apt kernel-devel n'est-ce pas?

Une solution de contournement a suggéré de copier le version.h (cp -v /usr/include/linux/version.h /lib/modules/$(uname -r)/build/include/linux) qui a conduit à cette erreur:

ERROR: If you are using a Linux 2.4 kernel, please make sure  you
either have configured kernel sources matching your  kernel or the
correct set of kernel headers installed  on your system.  If you are
using a Linux 2.6 kernel, please make sure  you have configured kernel
sources matching your kernel  installed on your system. If you
specified a separate  output directory using either the
"KBUILD_OUTPUT" or  the "O" KBUILD parameter, make sure to specify
this  directory with the SYSOUT environment variable or with  the
equivalent nvidia-installer command line option.  Depending on where
and how the kernel sources (or the  kernel headers) were installed,
you may need to specify  their location with the SYSSRC environment
variable or  the equivalent nvidia-installer command line option.

Où les sources du noyau sont-elles installées?

J'ai même essayé d'exécuter le ...pkg1.run avec --kernel-source-path /usr/include/linux (où version.h et de nombreux autres fichiers .h sont) en tant que paramètre, ce qui entraîne:

 ERROR: The kernel header file
 '/usr/include/linux/include/linux/kernel.h' does not exist (...)

Quelqu'un a une idée?

3
user239738

Ok, on dirait que vous avez beaucoup trop joué avec votre installation ... veuillez tout lire avant de faire quoi que ce soit.

La seule chose à faire est d’installer les en-têtes du noyau et tout ira bien:

Sudo apt-get install linux-generic

C’est la seule chose à faire pour résoudre le problème "Le fichier d’en-tête du noyau 'version.h' n’existe pas". erreur ... Maintenant, nous devons inverser ce que vous avez fait pour le corriger.

Comment puis-je configurer les fichiers sources du noyau? Il n'y a rien de tel que Sudo make-prepare ou Sudo get-apt kernel-devel, n'est-ce pas?

Vous n'avez besoin de rien configurer. Si vous utilisez APT tout sera bien placé. De plus, vous n'avez pas besoin de Sudo pour faire make. Il n'y a pas de commandes get-apt ni make-prepare, donc partout où vous les voyez, fermez cette page sans faire confiance à rien de ce qui est dit ici.

Une solution de contournement a suggéré de copier la version.h (cp -v /usr/include/linux/version.h/lib/modules/$ (uname -r)/build/include/linux) qui a conduit à cette erreur:

Vous ne devez suivre les guides que depuis un an et ceux qui savent ce qu’ils font ... le fichier /usr/include/linux/version.h et le /lib/modules/$(uname -r)/build/include/linux sont essentiellement fournis par différents packages. Celui dans usr est fourni par linux-libc-dev alors que celui dont vous avez besoin est fourni par linux-headers. Supprimer le:

Sudo rm /lib/modules/$(uname -r)/build/include/linux/version.h

ERREUR: le fichier d'en-tête du noyau '/usr/include/linux/include/linux/kernel.h' n'existe pas (...)

Cela sera également corrigé lorsque vous installerez le paquet d'en-têtes.

5
Braiam