je veux écrire un pilote de périphérique, mais je ne parviens pas à trouver le fichier d'en-tête. Est-ce que quelqu'un peut m'aider à le trouver?
Vous devriez pouvoir installer les fichiers d’en-tête du noyau pour le noyau en cours d’exécution en exécutant ce qui suit dans un terminal:
Sudo apt-get install linux-headers-$(uname -r)
En général, les packages d'en-tête du noyau sont nommés linux-header- *, où "*" indique la version et la variante (générique, serveur, etc.).
Vous pouvez simplement taper:
Sudo apt-get install linux-headers-generic
si vous êtes sur une installation de bureau. Apt-get résoudra les dépendances et installera la version correcte des en-têtes du noyau.
Cela devrait couvrir un autre problème lorsque: le noyau en cours d’exécution est obsolète, c’est-à-dire qu’il ne se trouve plus dans le référentiel ni dans ses en-têtes. La meilleure chose à faire est donc de mettre à jour le noyau avec la dernière version du référentiel.
linux-generic
est un méta-paquet permettant de conserver la version actuelle de le noyau et ses en-têtes:
Sudo apt-get update
Sudo apt-get install linux-generic
Remarque: en fonction de votre édition Ubuntu, vérifiez si vous avez besoin de linux-lowlatency
(Ubuntu Studio), de linux-signed-generic
ou de linux-virtual
.
Ou si vous avez installé aptitude: Sudo aptitude install linux-headers-$(uname -r)