3 points par GN⁺ 2024-11-16 | 1 commentaires | Partager sur WhatsApp
  • Introduction

    • Seer est une interface graphique pour gdb sous Linux, conçue pour offrir une interface facile à utiliser et visuellement agréable.
    • Le projet est en développement actif, et les bugs ou fonctionnalités souhaitées peuvent être signalés par e-mail ou via la page du projet GitHub.
  • Installation

    • Seer peut être installé via un gestionnaire de paquets ou depuis les sources.
    • Requirements

      • Linux, C++17, gdb (avec l’interpréteur mi), CMake (3.1.0 ou version supérieure) et QT6 sont requis.
      • L’installation du paquet QT6 "devel" est nécessaire.
      • QT5 n’est plus pris en charge, et la version 2.3 est le dernier arbre de sources à le supporter.
    • Install from package

      • L’installation est possible avec Pamac (Manjaro) et zypper (openSUSE Tumbleweed).
  • NEWS

    • Les dernières informations sont disponibles sur la page GitHub Wiki de Seer.
    • La v1.17 est la dernière release Qt5, et la prochaine release sera la v2.0 basée sur Qt6.
  • GUI overview

    • Main View

      • Fournit des listes de sources, fonctions, types, variables et bibliothèques.
      • Affiche les informations sur les variables et les registres.
      • Permet de consulter et rechercher les fichiers source dans le gestionnaire de code.
      • Permet de gérer les breakpoints, watchpoints, catchpoints et printpoints.
      • Fournit les informations sur les stack frames et les threads.
      • Prend en charge le mode de débogage inversé de Gdb.
    • Open Dialog

      • Décrit l’apparence de la boîte de dialogue lors de l’ouverture d’un exécutable.
    • Seer Console

      • Toute la sortie texte de l’exécutable est redirigée vers la console Seer.
    • Assembly View

      • Le code assembleur peut être affiché dans des onglets.
      • Il s’agit d’une nouvelle fonctionnalité, et les retours ainsi que les suggestions de fonctionnalités sont les bienvenus.
    • Memory Visualizer

      • Visualise le contenu brut de la mémoire.
    • Array Visualizer

      • Visualise le contenu des tableaux sous forme de tracé X-Y.
    • Struct Visualizer

      • Visualise le contenu des structures ou classes C/C++.
    • Image Visualizer

      • Visualise le contenu brut de la mémoire sous forme d’image.
  • Starting Seer

    • Conçu pour faciliter le lancement du programme à déboguer depuis la ligne de commande.
    • Les différentes méthodes d’exécution sont disponibles sur le GitHub Wiki.
  • Support/Contact

    • Les bugs ou demandes de fonctionnalités peuvent être transmis par e-mail ou via la page du projet GitHub.

1 commentaires

 
GN⁺ 2024-11-16
Commentaires sur Hacker News
  • Après l’avoir essayé avec Godot et sous Linux, l’interface est complexe mais fonctionnelle. Des erreurs se produisent parfois quand on veut inspecter la valeur d’une variable, ou bien il ne se passe rien. Un double-clic sur une variable ajoute sa valeur actuelle et un horodatage dans un panneau. Gede offre l’interface la plus simple et la plus intuitive ; il a moins de fonctionnalités, mais il fonctionne bien et sans bugs

  • GDB intègre une interface utilisateur texte (TUI) et elle est facile à utiliser. Elle prend aussi en charge les interactions à la souris

  • Après avoir essayé plusieurs frontends pour GDB, la TUI reste la meilleure. L’interface peut se casser quand le programme affiche du texte, donc il faut parfois la redessiner avec Ctrl + L. J’ai ajouté layout src et set confirm off au fichier de configuration

  • Si l’on se connecte à Linux depuis Windows ou qu’on utilise WSL, on peut faire du débogage distant de processus Linux avec WinDBG/VisualStudio

  • Il existe une interface Qt pour GDB ainsi que gdbgui, une interface web. C’est toujours agréable de voir les outils de débogage progresser

  • DDD m’a semblé magique la première fois que je l’ai vu. Il est toujours maintenu

  • Pour les utilisateurs d’Emacs, GUD offre une excellente intégration de GDB

  • J’utilise parfois GDB pour enquêter sur des bugs en C ou en Ada, mais ce n’est pas mon activité principale. Je n’investis donc pas de temps dans la mise en place d’un environnement de débogage complexe. J’utilise Emacs et quelques notes d’instructions simples

  • Quand je faisais du développement C++ sous Linux il y a 10 ans, j’utilisais Qt Creator, et le débogueur intégré (un frontend pour GDB) fonctionnait très bien. Pour C++ et Qt, je ne vois pas de raison d’utiliser autre chose