erreur typique de compilation, qui consiste à indiquer au Makefile un chemin vers les en-tête erroné.
Solution : modifier le Makefiile en conséquence : lui indiquer le bon chemin (sous Debian /usr/src/linux-headers-$(uname -r) par exemple)
Pour cela, consulter la documentation de la distribution, et lire le README du module. Quand c'est possible, installer le paquet binaire de la distribution utilisée, car testé et approuvé, et intégré.
Ne jamais compiler dans le répertoire /usr/src, ni même /usr/local/src, mais tojours dans ~/src. L'installation seule (make install) se fait en root.
Pour apt qui demande le CD, la solution est simple :
1 2
|
deb cdrom:[Debian GNU/Linux 4.0 r0 _Etch_ - Official i386 NETINST Binary-1 20070407-11:29]/ etch contrib main |
-->
1 2
|
#deb cdrom:[Debian GNU/Linux 4.0 r0 _Etch_ - Official i386 NETINST Binary-1 20070407-11:29]/ etch contrib main |
Ne pas oublier, évidemment, d'installer les en-tête du noyau
(
apt-get install linux-headers-$(uname -r)
)
Pour éviter un suppression/décompactage, make clean permet de restaurer les sources à leur état initial. Ainsi, une erreur lors de la compilation se récupère après avoir fait un make clean, puis à nouveau ./configure et make.
*3 règles :
lire le README
lire le README
lire le README
ok c'est pas très drôle, mais c'est quand même vrai. Demandez si vous en comprenez pas quelque chose.
Partager