Driver pour dalle tactile sous Redhat

Fermé
fred27b - 5 mai 2008 à 19:48
fred37b Messages postés 18 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 25 septembre 2008 - 16 mai 2008 à 09:28
Bonjour,

J'ai un petit probleme avec l'installation d'un driver sur ma distribution. Je suis sur une distribution Redhat modifié dont le noyeau est en version 2.6.18-8.el5. Le drivers que je veux installer, est un driver pour une dalle tactile j'ai télécharger les sources en .rpm et je les décompresse avec la commande (donnée dans le readme du drivers)
"rpm -ivh TWDrv<version>.src.rpm"

Puis je doit construire le driver avec mon noyeau avec la commande "rpmbuild -ba TWDrv.spec" mais cela me renvoit des erreurs, dans les logs j'ai pu voir qu'il manquait le fichier devfs_fs_kernel.h.

(/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:12:35: error: linux/devfs_fs_kernel.h: No such file or directory)

Je suis donc allait le chercher dans un noyeau kernel (exactement le linux-2.6.8).

Je n'ai plus l'erreur avec le .h mais j'ai quand même des erreur dans un fichier .c du drivers et je ne comprend pas pourquoi. Si quelqu'un sait quoi faire ???

Voici les log aprés la commande:
make -C /lib/modules/2.6.18-8.el5/build SUBDIRS=/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit modules
cp /usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/common.o.save /usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/common.o
CC [M] /usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.o
In file included from include/linux/list.h:8,
from include/linux/lockdep.h:12,
from include/linux/spinlock_types.h:12,
from include/linux/spinlock.h:78,
from include/linux/vmalloc.h:4,
from include/asm/io.h:49,
from /usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:8:
include/linux/prefetch.h: In function 'prefetch_range':
include/linux/prefetch.h:62: warning: pointer of type 'void *' used in arithmetic
In file included from /usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:8:
include/asm/io.h: In function 'check_signature':
include/asm/io.h:245: warning: wrong type argument to increment
In file included from include/linux/devfs_fs_kernel.h:5,
from /usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:12:
include/linux/config.h:6:2: warning: #warning Including config.h is deprecated.
/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c: At top level:
/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:108: error: expected ')' before string constant
/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:112: error: expected ')' before string constant
/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:120: error: expected ')' before string constant
/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:124: error: expected ')' before string constant
/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.c:128: error: expected ')' before string constant
make[3]: *** /usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit/TWDriver.o Error 1
make[2]: *** [_module_/usr/src/redhat/BUILD/TWDrv-5.64/TwDrvKit] Error 2
make[1]: *** [default] Error 2
make: *** [makeit] Error 2
erreur: Mauvais status de sortie pour /var/tmp/rpm-tmp.43686 (%build)
_____________________________________________________________________________________
avant il y en a d'autre mais tout à l'air de bien se décompresser !
A voir également:

3 réponses

marc[i1] Messages postés 2573 Date d'inscription vendredi 1 avril 2005 Statut Contributeur Dernière intervention 6 septembre 2008 382
5 mai 2008 à 23:41
Salut,

logiquement tu dois avoir un README ou INSTALL, lis le !
J'ai l'impression que c'est typiquement une erreur de compilation d'un module trop vieux pour ton noyau.
0
Et que puis je faire alors pour l'installer ?

Le driver est le dernier à jour sur le site du fabricant, de plus je suis obligé de travailler sur cette distribution dont la version du noyau est : 2.6.18-8.el5.

De plus les erreurs dans le .c viennent de la fonction "MODULE_PARM(,);" et j'ai vu quelques pages sur le net qui disent qu'il y a un problême.
0
fred37b Messages postés 18 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 25 septembre 2008
16 mai 2008 à 09:28
Dans un fichier en C une fonction MODULE_PARM devait être remplacé par module_param. Le driver s'installe correctement désormais.
0