Compiler un pilote
C'est toujours la galère de mon coté
Système et matériels / Autres matériels et périphériques
Jybz Membre non connecté
-
- Voir le profil du membre Jybz
- Inscrit le : 10/10/2018
- Groupes :
-
Administrateur
-
Forgeron
J'aimerai sur ma BananaPro avec Mageia tester une sonde de température sur le protocole 1-Wire (ou Dallas, ou W1, ...)
D'après moult pages web, il faut le pilote logiciel w1-gpio. Et sur Mageia, il n'est pas présent par défaut. Là, c'est la loose...
Comme je ne me souviens jamais comment je fais, je fais ce petit poste pour avoir une solution boiteuse. J'espère que Nic80 passera par là pour dire "Hey mais tu te compliques trop là vie ! Fais Zip, Zap, clac et c'est automatique à chaque monté de version du noyau."
Actuellement, après des heures de recherche :
Code BASH :
su - <mdp root> urpmi kernel-source-5.10.16-1.mga8 exit mkdir /tmp/build cp -rf /usr/src/kernel-5.10.16-1.mga8/* /tmp/build/ cd /tmp/build cp /boot/config-5.10.16-desktop-1.mga8 ./.config echo "CONFIG_W1_MASTER_GPIO=m" >>./.config make scripts prepare modules_prepare make modules M=drivers/w1
Explication :
Je n'aime pas toucher à la racine (/usr/*) car pour moi, c'est géré par les paquets de Mageia, je ne souhaite aucun conflit. D'ailleurs, j'apprends à ne plus utiliser root, par exemple, la compilation ici ce fait en tant que simple utilisateur en dehors de /usr (j'utilise la RAM avec le dossier /tmp).
J'ai passé beaucoup de temps à trouver le nom du pilote "CONFIG_W1_MASTER_GPIO=m", je l'ai trouvé dans le Makefile du dossier contenant le fichier w1-gpio.c.
Je ne sais pas la ligne make scripts prepare modules_prepare est utile.
Actuellement, j'ai mon module sur ma machine x86_64, je dois refaire son mon armv7hl. (Ou compilation-croisée, je verrais...)
Téléverser une image : /wiki/hebergement-de-fichiers-sur-mlo
| Arch | Machine | OS |
| x86_64 | lenovo x250 | mga9 |
| armv7hl | bananapro | mga9 |
| aarch64 | Raspberry Pi 4B | mga9 |
funix Membre non connecté
-
- Voir le profil du membre funix
- Inscrit le : 17/12/2012
- Site internet
- Groupes :
nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Ça doit faire quelques siècles (
) que je n' ai pas essayé de compiler un noyau (je me demandes si j' ai jamais réussi un jour (c' est assez chronophage et j' ai souvent fini par des kernel panic ). Je ne serais pas d' une grande aide là dessus.Mais pour que le 1-wire soit présent à chaque mise à jour, le mieux c' est qu' il intégré à l' arbre directment.
Bon après le relevé de température avec des sondes 1-wire n' est peut être pas le créneau de Mageia

Jybz Membre non connecté
-
- Voir le profil du membre Jybz
- Inscrit le : 10/10/2018
- Groupes :
-
Administrateur
-
Forgeron
Cependant, je ne souhaite pas compiler tout le noyau, juste un pilote qui est dans les sources du noyau. N'est-ce pas le but de DKMS ?
Téléverser une image : /wiki/hebergement-de-fichiers-sur-mlo
| Arch | Machine | OS |
| x86_64 | lenovo x250 | mga9 |
| armv7hl | bananapro | mga9 |
| aarch64 | Raspberry Pi 4B | mga9 |
nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Je ne pense pas que DKMS permette la compilation de modules déjà présents dans l' arbre du noyau ( ce qui semble être le cas du pilote 1-wire), par exemple les modules Nvidia et Virtualbox n' y sont pas ( je serais surpris que ce soit le cas).
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie