Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 11/07/2009, à 21:58

kevlar

existe-t-il un débugeur valable sous Linux ?

Bonjours à tous !

Je suis en train de "tester" gdb et Nemiver...

Une question sous forme de provoc' : c'est sérieux ces choses ? Pour moi, c'est inutilisable ! Je ne parle pas de leur "logique" de fonctionnement, je veux dire qu'en termes d'ergonomie, ils correspondent à un moniteur d'Apple II.

J'ai, comme beaucoup, développé pendant des années avec des outils Borland : je pouvais en direct exécuter pas à pas (ce que font bien sûr ces gdb & co) ; mais au moins, la surveillance des variables était sérieuse : fenêtre dédiée, lecture en direct et automatique de l'état des variables...
Là, j'ai sans doute zappé quelque chose, mais l'utilisation des ordres "watch", "print"  etc . dans gdb n'a aucun intérêt, dans la mesure où, par exemple, le suivi des interactions de la souris sous Gtk, par exemple, est impossible ... Il y a quelques msecs entre l'événement "key-press" et l'évéenement "key-release" ; comment peut-on aller aussi vite en devant saisir des ordres au fur et à mesure dans le terminal ?

Sans doute n'ai-je pas tout compris, j'attends vos lumières. Parce que dans ces conditions, je me contenterais de "printf" dans le corps du programme et d'une feuille de papier.

Hors ligne

#2 Le 11/07/2009, à 22:04

kevlar

Re : existe-t-il un débugeur valable sous Linux ?

encore une question : n'y aurait-il pas incompatibilité entre compiz et le débogage ? Parce que le programme gèle presque systématiquement ... du moins dès que l'on met un point d'arrêt, et que l'on essaye de lire les variables avec info variables, par exemple.

Hors ligne

#3 Le 11/07/2009, à 23:04

rniamo

Re : existe-t-il un débugeur valable sous Linux ?

il y a ddd pour gdb et non normalement pour tes freezes


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#4 Le 12/07/2009, à 01:35

Grunt

Re : existe-t-il un débugeur valable sous Linux ?

"printf" dans le corps du programme et d'une feuille de papier.

Y'a que ça de vrai tongue

#5 Le 12/07/2009, à 01:54

rniamo

Re : existe-t-il un débugeur valable sous Linux ?

lol ... tant que c'est simple le debug au "printf" suffit...mais un debugger est plus confortable.


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#6 Le 12/07/2009, à 08:39

pef

Re : existe-t-il un débugeur valable sous Linux ?

Grunt a écrit :

"printf" dans le corps du programme et d'une feuille de papier.

Y'a que ça de vrai tongue

Sauf que des fois ça ne marche pas, quand par exemple le printf modifie le temps d'exécution du programme, il peut engendrer des bugs ou en faire disparaitre...

Hors ligne

#7 Le 12/07/2009, à 08:45

omc

Re : existe-t-il un débugeur valable sous Linux ?

Bonjour,
En fait le deboguage d'applications avec interfaces graphiques est plus complexe car ce sont des applications multi-threads.
Dans ces cas là, le plus simple est d'utiliser des points d'arrêts.
Par exemple si tu t'interesse à la partie de ton prog qui gère le "key-press" event, il faut mettre un point d'arrêt à la première ligne de cette fonction et ensuite faire du pas à pas.

Sinon mon avis est que Gdb est un outil pas trés convivial mais trés puissant... D'ailleurs beaucoup de debugger conviviaux ne font que mapper une interface graphique sur gdb (en perdant d'ailleurs quelques fonctionnalités de gdb)

Hors ligne

#8 Le 13/07/2009, à 10:28

pef

Re : existe-t-il un débugeur valable sous Linux ?

omc a écrit :

Bonjour,
En fait le deboguage d'applications avec interfaces graphiques est plus complexe car ce sont des applications multi-threads.
Dans ces cas là, le plus simple est d'utiliser des points d'arrêts.
Par exemple si tu t'interesse à la partie de ton prog qui gère le "key-press" event, il faut mettre un point d'arrêt à la première ligne de cette fonction et ensuite faire du pas à pas.

Sinon mon avis est que Gdb est un outil pas trés convivial mais trés puissant... D'ailleurs beaucoup de debugger conviviaux ne font que mapper une interface graphique sur gdb (en perdant d'ailleurs quelques fonctionnalités de gdb)

des noms ! big_smile

Hors ligne

#9 Le 13/07/2009, à 11:15

nicolas.sitbon

Re : existe-t-il un débugeur valable sous Linux ?

pef a écrit :

des noms ! big_smile

Personnellement, j'utilise DBX intégré dans SunStudio.
http://docs.sun.com/app/docs/doc/819-5257

Dernière modification par nicolas.sitbon (Le 13/07/2009, à 11:15)

Hors ligne

#10 Le 13/07/2009, à 11:42

xamaco

Re : existe-t-il un débugeur valable sous Linux ?

Pour les noms :
ddd (déjà mentionné, le plus puissant).
Sinon, il y a insight et xxgdb, normalement plus simples mais moins puissants...
Pour un petit tuto sur ddd :
http://www.dil.univ-mrs.fr/~garreta/generique/autres/UtiliserDDD.html

Hors ligne

#11 Le 13/07/2009, à 11:52

Le Farfadet Spatial

Re : existe-t-il un débugeur valable sous Linux ?

Salut à tous !

kevlar a écrit :

en termes d'ergonomie, ils correspondent à un moniteur d'Apple II.

Non : ce sont des logiciels en lignes de commandes, basés donc sur le terminal UNIX.

   Ddd est en effet un frontal graphique pour Gdb, qui fonctionne très bien. Si vraiment tu es complètement accroc aux environnements de développements intégrés, Kdevelop et Eclipse intègre tout deux Gdb et Valgrind dans leurs interfaces graphiques.

Grunt a écrit :

"printf" dans le corps du programme et d'une feuille de papier.

Y'a que ça de vrai

Soyons sérieux, Kevlar a parlé de déboguage.

   J'ai été un peu comme Linus TORVALDS, qui considère que l'usage de débogeurs n'est pas une bonne chose, car ils poussent à se focaliser sur les conséquences plutôt que les causes. Cela dit, j'ai mis un peu d'eau dans mon vin : parfois, l'usage d'un débogueur est utile. Soyons clairs : non seulement l'usage de « printf » est long et très intrusif dans le code, mais en plus ce n'est pas du tout adapté à un vrai déboguage --- ce n'est d'ailleurs pas l'approche de Linus TORVALDS, qui lui réfléchit au problème sans rajouter des « printf » à tout va. Lorsqu'un problème se pose, il faut utiliser l'outil adapté.

   À bientôt.

                                                                                                                                 Le Farfadet Spatial

Hors ligne