Driver pour dalle tactile sous Redhat

fred27b -  
fred37b Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   -
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   Statut Contributeur Dernière intervention   382
 
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
fred37b
 
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   Statut Membre Dernière intervention  
 
Dans un fichier en C une fonction MODULE_PARM devait être remplacé par module_param. Le driver s'installe correctement désormais.
0