Installer le driver nVidia 8178 sous linux 2.6.16 et supérieur

Un article de OoKoo.org.

Jump to: navigation, search

Problème

Sur les nouveaux kernels (à partir du 2.6.16) certaines fonctions, qui n'étaient plus utilisées, ont été enlevées. Cela pose un problème pour les drivers qui les utilisaient, en particulier le driver des cartes graphiques nVidia.

Les changements du kernel 2.6.16 empêchant les drivers nVidia de s'installer sont :

  • Supression de la fonction remap_page_range
  • Supression de la fonction pci_find_class
  • Modification de la structure struct rlimit

Ce guide s'adresse à tous ceux qui utilisent une carte graphique nVidia.

Guide

Pour commencer, téléchargez le driver nVidia. À ce jour la dernière version est la 8178, qui n'est pas compatible avec le kernel 2.6.16. NVidia sortira sûrement prochainement une version compatible, rendant ce guide inutile.

Le driver nvidia peut être obtenu à cette adresse : http://www.nvidia.com/object/unix.html

Une fois le driver localisé, tapez les commandes en gras dans l'extrait suivant :

Mori:/tmp/test$ wget http://download.nvidia.com/XFree86/Linux-x86/1.0-8178/NVIDIA-Linux-x86-1.0-8178-pkg1.run
(téléchargement via wget)
23:27:06 (35.90 KB/s) - « NVIDIA-Linux-x86-1.0-8178-pkg1.run » sauvegardé [12004641/12004641]
Mori:/tmp/test$ sh NVIDIA-Linux-x86-1.0-8178-pkg1.run -x
Creating directory NVIDIA-Linux-x86-1.0-8178-pkg1
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 1.0-8178.....................................
Mori:/tmp/test$ cd NVIDIA-Linux-x86-1.0-8178-pkg1
Mori:/tmp/test/NVIDIA-Linux-x86-1.0-8178-pkg1$ curl -s http://ookoo.org/files/nvidia_8178_kernel_2.6.16_fix.diff | patch -p1
patching file usr/src/nv/nv-linux.h
patching file usr/src/nv/os-interface.c
Mori:/tmp/test/NVIDIA-Linux-x86-1.0-8178-pkg1$ ./nvidia-installer

Vous voilà à présent dans le programme d'installation de nVidia. Normalement à partir de là vous avez l'habitude. Il n'y a plus de raison que la compilation plante (en tout cas pas à cause du kernel 2.6.16).

Liens

Autres langues