A qui s'adresse cet article ?
Aux personnes ayant déjà un minimum d'expérience sous Linux et Mageia et souhaitant participer à son développement.
A quelle(s) situation(s) s'applique(ent) cet article ?
Nous allons parler ici des programmes qui "plantent" comme on le dit souvent et qui se traduit souvent par une fermeture non désirée du programme... Ce sera utile pour les testeurs de cauldron (version de développement de Mageia, mais aussi pour les versions stables : des bugs subsistent toujours !
Lorsqu'une application plante ou pire, ne démarre pas, on applique de suite quelques réflexes :
Les applications doivent être lancées en tant qu'utilisateur et non root ! (sauf cas particulier) On tape directement le nom de l'executable dans la console. ex :
kwrite
L'une des choses auquel on sera attentif est le fameux
segfault ou
segmentation fault, erreur de segmentation en français.
Une backtrace est la suite des appels de fonction du programme. Utile aux devs pour savoir ce qui "s'est passé".
Certaines applications possèdent des utilitaires qui affichent et proposent d'envoyer un rapport de bug. C'est le cas de KDE par exemple. Le soucis, c'est qu'en l'état, ce n'est pas complet (si vous voyez des ?? partout, c'est que ce n'est pas bon).
D'autres programmes n'ont pas ce genre d'utilitaire : gajim, xchat... et il faudra faire ça manuellement.
Parfois il y a des exceptions à la procedure, comme firefox ou thunderbird...
Utile, c'est lui qui va générer la backtrace.
Les dépôts debug, tu activeras
Il faut des binaires "spéciaux" pour générer une backtrace, il faut installer des paquets supplémentaires.
Là, on coche les dépôts debug.
Si on a un soucis avec gajim :
; A noter que ce n'est souvent pas suffisant, mais on le saura en temps voulu.
Pour des applications KDE, cette liste est un bon début :
C'est parti ! Si c'est une appli KDE, ou qui possède un utilitaire gentil qui génère ce qu'il faut, c'est facile.
Si c'est un autre programme, on sort une console et on démarre gdb :
Ensuite, on lance le programme (c'est plus lent que d'habitude, c'est normal)
On reproduit le bug... (ça doit planter quoi

) et on le laisse bien terminer sa popote puis :
Ca génère la backtrace. Deux cas de figures :
Thunderbird et Firefox passent par des scripts pour être lancé, si vous tentez la méthode ci-dessus, ça ne fonctionnera pas. A la place de gdb thunderbird, on lance
et le tour est joué.
Retour :Utiliser Mageia