Fedora-Fr - Communauté francophone Fedora - Linux

Communauté francophone des utilisateurs de la distribution Linux Fedora.

  

Dernière news : Arrêt de maintenance pour Fedora 28

#1 11/12/2018 22:35:40

rapy73
Membre
Inscription : 18/07/2011
Messages : 321

Aide pour compiler un driver

Bonjour,

Pour installer les driver d'une tablette Q11K Huion
Le noyau fedora ayant évolué et le driver n'ayant pas été adapté, je n'arrive plus à le compilé; J'ai trouvé une astuce sur le net, mais à la compilation j'ai le message d'erreur suivant :

[root@localhost Q11K_Driver-master]# make
make -C /lib/modules/4.19.7-300.fc29.x86_64/build SUBDIRS=/home/bertrand/Musique/Q11K_Driver-master modules
make[1] : on entre dans le répertoire « /usr/src/kernels/4.19.7-300.fc29.x86_64 »
  CC [M]  /home/bertrand/Musique/Q11K_Driver-master/q11k_device.o
/home/bertrand/Musique/Q11K_Driver-master/q11k_device.c: Dans la fonction « q11k_probe »:
/home/bertrand/Musique/Q11K_Driver-master/q11k_device.c:205:18: error: « HID_QUIRK_NO_EMPTY_INPUT » non déclaré (première utilisation dans cette fonction); vouliez-vous utiliser « HID_QUIRK_MULTI_INPUT » ?
  hdev->quirks |= HID_QUIRK_NO_EMPTY_INPUT;
                  ^~~~~~~~~~~~~~~~~~~~~~~~
                  HID_QUIRK_MULTI_INPUT
/home/bertrand/Musique/Q11K_Driver-master/q11k_device.c:205:18: note: chaque identificateur non déclaré est rapporté une seule fois pour chaque fonction dans laquelle il apparaît
/home/bertrand/Musique/Q11K_Driver-master/q11k_device.c: Au plus haut niveau:
/home/bertrand/Musique/Q11K_Driver-master/q11k_device.c:158:12: warning: « q11k_prepare_pens » déclaré « static » mais jamais défini [-Wunused-function]
 static int q11k_prepare_pens(struct hid_device *hdev);
            ^~~~~~~~~~~~~~~~~
/home/bertrand/Musique/Q11K_Driver-master/q11k_device.c:160:12: warning: « q11k_register_relative_pen » déclaré « static » mais jamais défini [-Wunused-function]
 static int q11k_register_relative_pen(struct hid_device *hdev);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:310: /home/bertrand/Musique/Q11K_Driver-master/q11k_device.o] Error 1
make[1]: *** [Makefile:1521: _module_/home/bertrand/Musique/Q11K_Driver-master] Error 2
make[1] : on quitte le répertoire « /usr/src/kernels/4.19.7-300.fc29.x86_64 »
make: *** [Makefile:6: modules] Error 2
[root@localhost Q11K_Driver-master]# 

note :
Installé:
  kernel-4.19.7-300.fc29.x86_64                 kernel-core-4.19.7-300.fc29.x86_64   kernel-modules-4.19.7-300.fc29.x86_64 
  kernel-modules-extra-4.19.7-300.fc29.x86_64

pouvez-vous me dire ce qui ne va pas et quoi faire ?

merci

Dernière modification par rapy73 (11/12/2018 22:45:24)

Hors ligne

#2 12/12/2018 14:43:45

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 7 033
Site Web

Re : Aide pour compiler un driver

Bonjour

es-tu sûr que ce driver est fait pour cette version de kernel ?

Hors ligne

#3 12/12/2018 16:43:05

Refuznik
Membre
Inscription : 31/01/2007
Messages : 7 281

Re : Aide pour compiler un driver

Trouvé rapidement sur le net https://github.com/konachan700/Q11K_Driver/issues/4
Tu dois modifier :
hdev->quirks |= HID_QUIRK_NO_EMPTY_INPUT;
Par ça :
hdev->quirks |= BIT(8);

Hors ligne

#4 12/12/2018 19:13:47

rapy73
Membre
Inscription : 18/07/2011
Messages : 321

Re : Aide pour compiler un driver

Bonsoir,

Oui tout à fait le driver n'est pas fait pour cette version de kernet,
mais j'ai comme Refuznik essayé l'astuce qu'il indique et cela donne le message error de mon 1er post

merci

Hors ligne

#5 12/12/2018 19:35:08

Refuznik
Membre
Inscription : 31/01/2007
Messages : 7 281

Re : Aide pour compiler un driver

Surtout qu'il fonctionnait sous F28 https://forums.fedora-fr.org/viewtopic.php?id=67698

Tu as fait un make clean ?

Hors ligne

#6 12/12/2018 22:19:08

rapy73
Membre
Inscription : 18/07/2011
Messages : 321

Re : Aide pour compiler un driver

Oui sous F28 tout fonctionnait
Compilation terminée avec succès
je  place le fichier de configuration là où il faut
je reboote
et là, blocage impossible d'aller jusqu'au login de plasma
je viens de finir de remonter ma machine avec une image (ouf) et recopier mon home
je refais une image de mon système et je vais retenter le coup...
une idée du blocage ?

merci

Hors ligne

#7 13/12/2018 00:12:03

Refuznik
Membre
Inscription : 31/01/2007
Messages : 7 281

Re : Aide pour compiler un driver

je viens de finir de remonter ma machine avec une image (ouf) et recopier mon home

Même pas besoin tu rebootais sur un ancien noyau ça suffisait.
Surtout ça t'aurait permis de lire les fichiers de logs pour savoir où ça bloquait.

Hors ligne

#8 13/12/2018 05:06:16

rapy73
Membre
Inscription : 18/07/2011
Messages : 321

Re : Aide pour compiler un driver

J'ai essayé de booter sur les deux précédents noyaux, rien à faire

Hors ligne

#9 13/12/2018 09:24:31

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 21 609

Re : Aide pour compiler un driver

Tu as booté en ôtant les directives quiet et rhgb pour voir ce qui se passe ?


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#10 13/12/2018 10:12:04

rapy73
Membre
Inscription : 18/07/2011
Messages : 321

Re : Aide pour compiler un driver

Bonjour,

Nouvo99 je ne connais pas les directives quiet et rhgb ni comment les utiliser, si vous pouvez m'indiquer à quoi elles servent et surtout le moyen de s'en servir.
merci

Hors ligne

#11 13/12/2018 10:31:30

rapy73
Membre
Inscription : 18/07/2011
Messages : 321

Re : Aide pour compiler un driver

Lorsque je veux compiler j'ai le message suivant qui me dit de mettre à jour mon "compiler", mais comment faire ? Gcc est installé
merci

[root@localhost Q11K_Driver-master fonctionne au 12-12-2018]# make clean
make -C /lib/modules/4.19.8-300.fc29.x86_64/build SUBDIRS=/home/bertrand/Q11K_Driver-master fonctionne au 12-12-2018 clean
make[1] : on entre dans le répertoire « /usr/src/kernels/4.19.8-300.fc29.x86_64 »
arch/x86/Makefile:227: *** You are building kernel with non-retpoline compiler, please update your compiler.. Arrêt.
make[1]: *** [Makefile:286: __build_one_by_one] Error 2
make[1] : on quitte le répertoire « /usr/src/kernels/4.19.8-300.fc29.x86_64 »
make: *** [Makefile:6: clean] Error 2
[root@localhost Q11K_Driver-master fonctionne au 12-12-2018]# 

note : [root@localhost Q11K_Driver-master fonctionne au 12-12-2018]# dnf list --all gcc
Dernière vérification de l’expiration des métadonnées effectuée il y a 0:14:31 le jeu. 13 déc. 2018 16:44:36 CET.
Paquets installés
gcc.x86_64                                                8.2.1-5.fc29                                                @updates
Paquets disponibles
gcc.i686                                                  8.2.1-2.fc29                                                fedora 
[root@localhost Q11K_Driver-master fonctionne au 12-12-2018]#

Dernière modification par rapy73 (13/12/2018 18:01:20)

Hors ligne

#12 14/12/2018 10:47:26

rapy73
Membre
Inscription : 18/07/2011
Messages : 321

Re : Aide pour compiler un driver

Bonjour,

Voici le résultat de la compilation en passant par:
make clean
make
make install

[root@localhost Q11K_Driver-master]# make clean
make -C /lib/modules/4.19.8-300.fc29.x86_64/build SUBDIRS=/home/bertrand/Q11K_Driver-master clean
make[1] : on entre dans le répertoire « /usr/src/kernels/4.19.8-300.fc29.x86_64 »
  CLEAN   /home/bertrand/Q11K_Driver-master/.tmp_versions
  CLEAN   /home/bertrand/Q11K_Driver-master/Module.symvers
make[1] : on quitte le répertoire « /usr/src/kernels/4.19.8-300.fc29.x86_64 »
[root@localhost Q11K_Driver-master]# make
make -C /lib/modules/4.19.8-300.fc29.x86_64/build SUBDIRS=/home/bertrand/Q11K_Driver-master modules
make[1] : on entre dans le répertoire « /usr/src/kernels/4.19.8-300.fc29.x86_64 »
  CC [M]  /home/bertrand/Q11K_Driver-master/q11k_device.o
/home/bertrand/Q11K_Driver-master/q11k_device.c:158:12: warning: « q11k_prepare_pens » déclaré « static » mais jamais défini [-Wunused-function]
 static int q11k_prepare_pens(struct hid_device *hdev);
            ^~~~~~~~~~~~~~~~~
/home/bertrand/Q11K_Driver-master/q11k_device.c:160:12: warning: « q11k_register_relative_pen » déclaré « static » mais jamais défini [-Wunused-function]
 static int q11k_register_relative_pen(struct hid_device *hdev);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/bertrand/Q11K_Driver-master/q11k_device.mod.o
  LD [M]  /home/bertrand/Q11K_Driver-master/q11k_device.ko
make[1] : on quitte le répertoire « /usr/src/kernels/4.19.8-300.fc29.x86_64 »
[root@localhost Q11K_Driver-master]# make install
make -C /lib/modules/4.19.8-300.fc29.x86_64/build SUBDIRS=/home/bertrand/Q11K_Driver-master modules_install
make[1] : on entre dans le répertoire « /usr/src/kernels/4.19.8-300.fc29.x86_64 »
  INSTALL /home/bertrand/Q11K_Driver-master/q11k_device.ko
At main.c:160:
- SSL error:02001002:system library:fopen:No such file or directory: crypto/bio/bss_file.c:72
- SSL error:2006D080:BIO routines:BIO_new_file:no such file: crypto/bio/bss_file.c:79
sign-file: certs/signing_key.pem: No such file or directory
  DEPMOD  4.19.8-300.fc29.x86_64
make[1] : on quitte le répertoire « /usr/src/kernels/4.19.8-300.fc29.x86_64 »
install -D -m 0644 99-q11k_device.conf /etc/modprobe.d/99-q11k_device.conf
depmod -a
[root@localhost Q11K_Driver-master]# 

Je vois que dans les 5 dernières lignes il y a deux erreurs SSL.....
par contre toujours le même problème au reboote, ça bloque et je obligé de réinstaller une image du système pour le récupérer.

merci

Hors ligne

#13 14/12/2018 11:38:50

rapy73
Membre
Inscription : 18/07/2011
Messages : 321

Re : Aide pour compiler un driver

Après recherche, les erreurs SSL non pas d'importance
Par contre, j'ai trouvé d’où vient le problème, machine bloquée au reboote, c'est le fichier de configuration de la tablette que je mets dans le répertoire : /usr/share/X11/xorg.conf.d
qui occasionne ce blocage, si pas de fichier linux boot normalement
voici ce fichier : 52-huion-on-wacom.conf

Section "InputClass"
    Identifier "Q11K"
    MatchProduct "Q11K"
    MatchIsTablet "on"
    MatchDevicePath "/dev/input/event*"
    Driver "wacom"
EndSection
Section "InputClass"
    Identifier "Q11K"
    MatchIsTablet "on"
    MatchDevicePath "/dev/input/event*"
    Driver "wacom"
    Option "TopX" "100"
    Option "TopY" "90"
    Option "BottomX" "55000"
    Option "BottomY" "35000"
EndSection

c'est pourtant le fichier qui fonctionnait sous fédora 28 avec un noyau en 4.13 il me semble.
rien changé dedans.

voilà pour les recherches.

Dernière modification par rapy73 (14/12/2018 11:39:18)

Hors ligne

Pied de page des forums