215 votes

Existe-t-il une interface graphique C++ gdb pour Linux ?

En bref : Est-ce que quelqu'un connaît une interface graphique pour gdb qui l'amène au même niveau ou proche de l'ensemble des fonctionnalités que l'on obtient dans la version la plus récente de Visual C++ ?

En détail : En tant que personne ayant passé beaucoup de temps à programmer sous Windows, l'une des plus grandes pierres d'achoppement que j'ai trouvées chaque fois que j'ai dû coder du C++ sous Linux est que le débogage de quoi que ce soit en utilisant la ligne de commande gdb me prend plusieurs fois plus de temps que dans Visual Studio, et cela ne semble pas s'améliorer avec la pratique. Certaines choses sont simplement plus faciles ou plus rapides à exprimer graphiquement.

Plus précisément, je cherche une interface graphique qui :

  • Gère tous les éléments de base comme le passage au-dessus et dans le code, les variables de surveillance et les points d'arrêt.
  • Comprend et peut afficher le contenu des types de données C++ complexes et imbriqués.
  • ne s'embrouille pas et peut de préférence parcourir intelligemment le code et les structures de données modélisés tout en affichant des informations pertinentes telles que les types de paramètres.
  • Peut gérer des applications threadées et passer d'un thread à l'autre pour parcourir ou visualiser l'état d'une application.
  • Peut gérer l'attachement à un processus déjà démarré ou la lecture d'un core dump, en plus du démarrage du programme dans gdb.

Si un tel programme n'existe pas, j'aimerais connaître les expériences des gens avec des programmes qui répondent au moins à certains de ces points. Quelqu'un a-t-il des recommandations à faire ?

Edit :
C'est bien d'énumérer les possibilités, et je prends ce que je peux avoir, mais ce serait encore plus utile si vous pouviez inclure dans vos réponses :
(a) Si vous avez utilisé ou non cette interface graphique et si oui, quels sont vos commentaires positifs/négatifs à son sujet.
(b) Si vous le savez, quelles sont les caractéristiques susmentionnées qui sont/ne sont pas supportées.

Les listes sont faciles à trouver, les sites comme celui-ci sont excellents car ils permettent de se faire une idée des expériences personnelles des gens avec les applications.

21 votes

+1 pour "Les sites comme celui-ci sont géniaux car ils permettent de se faire une idée des expériences personnelles des gens". De nos jours, trop de gens se contentent de dresser une liste, ce qui, à mon avis, passe complètement à côté de l'essentiel.

1 votes

0 votes

3voto

Allen Points 3497

Ce qu'il est possible de faire par étapes sera limité par les informations de débogage que g++ produit, dans une large mesure. Emacs fournit une interface à gdb qui vous permet de le contrôler via les barres d'outils/menus et d'afficher les données dans des fenêtres séparées, ainsi que de taper directement les commandes gdb. Le CDT d'Eclipse fournit des outils similaires. J'ai entendu parler d'Anjuta et de Code::Blocks mais je ne les ai jamais utilisés.

3voto

Adam Pierce Points 12801

Vous ne mentionnez pas si vous utilisez Windows ou UNIX.

Sur les systèmes UNIX, KDevelop est bon mais j'utilise KDbg parce qu'il est facile à utiliser et fonctionnera aussi avec des applications non développées dans KDevelop.

Eclipse est bon sur les deux plateformes.

Sous Windows, il existe un excellent paquetage appelé Développeur de bureau Wascana qui est Eclipse CDT et MinGW, tous emballés et préconfigurés pour un minimum de douleur. C'est la meilleure chose que j'ai trouvée pour développer du code GNU sous Windows.

J'ai utilisé tous ces débogueurs et aucun d'entre eux n'est aussi bon que MS Dev Studio. Eclipse/Wascana est probablement le plus proche mais il a des limitations comme le fait de ne pas pouvoir entrer dans les DLLs et il ne fait pas un aussi bon travail pour examiner les variables.

3voto

Viktor Malyi Points 1015

Avez-vous déjà jeté un coup d'œil à Débogueur DS-5 ?

Il existe une version payante qui comprend de nombreuses fonctionnalités utiles, mais vous pouvez également utiliser gratuitement l'édition communautaire (qui est également très utile, notamment pour les systèmes embarqués).

J'ai une expérience positive avec cet outil lorsque je débogue des applications Android sur un appareil réel en utilisant eclipse.

2voto

crobar Points 339

El Code:Blocks L'IDE C++ a une enveloppe graphique, avec quelques unes des fonctionnalités que vous voulez, mais rien de comparable à la puissance de VS.

2voto

Yin Ma Points 21

J'utilise l'interface graphique du débogueur Affinic (GDB). Il supporte Windows/Mac OSX/Linux/Cygwin. Voici le lien : http://www.affinic.com/?page_id=109 C'est mieux que DDD. Le DDD est trop vieux pour moi. C'est un design plus récent.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X