IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

wxWidgets Discussion :

wxWidgets 2.8.8 en Debug


Sujet :

wxWidgets

  1. #1
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 148
    Points : 232
    Points
    232
    Par défaut wxWidgets 2.8.8 en Debug
    Bonjour tout le monde,

    Je me permet de poster ici suite aux multiples échecs quand à ma recherche à ce sujet ...

    Ma question va paraître un peu désuète mais bon, ce n'est pas grave : j'aimerais savoir ce qu'apporte la partie debug de la bibliothèque wxWidgets (et d'ailleurs, ce qu'apporte la partie debug des library en général). Personnellement, je me suis toujours servi des release et j'ai toujours pensé que le debug servait principalement à debugger la bibliothèque en elle-même mais comme j'ai eu des échos totalement opposés à ce sujet, j'aimerais être certain de ce qu'il en est ... Donc, désolé de mon ignorance et merci à tous ceux qui pourront m'éclairer sur ce point parce que là ça fait un peu tâche (à mon goût) de ne pas savoir ça ...

    PS : Je reprécise au cas ou, je ne parle pas du debugger mais bien de la partie debug de la bibliothèque (par exemple : lib-d.a, xxx-d.dll, ...).

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Salut,
    Personnellement, ça me sert souvent à entrer dans les fonctions de la librairie pendant que je debug mon code. Ca me permet de comprendre, au delà de l'aide associée, comment fonctionne concrètement le code de la librairie et ainsi de voir si le bug vient de mon code, de ma mauvaise compréhension de la librairie ou (si, si ca existe) de la librairie.
    En plus, le mode debug est souvent truffé d'assert en tout genre permettant de relever des erreurs qui seraient invisibles au premier abord en mode release.

  3. #3
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Et de plus, il y a beaucoup d'asserts pertinant dans les wxWidgets.
    C'est indispensable pour améliorer son code, et le rendre le plus propre possible.

    Et comme 3DArchi, parfois je cherche aussi pourquoi tel code à tel réaction au niveau debug en allant au fond des wxWidgets (même si c'est quand même rare).

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2008
    Messages : 38
    Points : 42
    Points
    42
    Par défaut
    Citation Envoyé par Ti-R Voir le message
    Et de plus, il y a beaucoup d'asserts pertinant dans les wxWidgets.
    C'est indispensable pour améliorer son code, et le rendre le plus propre possible.

    Et comme 3DArchi, parfois je cherche aussi pourquoi tel code à tel réaction au niveau debug en allant au fond des wxWidgets (même si c'est quand même rare).
    Je confirme !
    J'ai essayé les 2 approches (wxWidgets en debug ou non), et je trouve très pratique d'aller lire le code de wxWidgets à partir d'une pile d'appels de fonctions.

    wxWidgetsement vôtre,

  5. #5
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 148
    Points : 232
    Points
    232
    Par défaut
    Bonjour et merci à vous trois pour vos réponses .

    Donc suite à vos réponses, je pense effectivement que la partie debug de la bibliothèque pourra m'intéresser ...

    J'aurais cependant une autre question (mon vrai problème en fait) toujours sur le même sujet.
    Depuis que j'utilise wxWidgets, je ne me sers que du mode release, non pas par préférence mais tout simplement parceque la partie debug que j'ai compilée ne me permet pas d'exécuter mes programmes ...
    Pour ce qui est de la phase de compilation, tout se passe bien, mais au moment d'exécuter le programme, je me prends une superbe erreur 0xc0000005 (l'application n'a pu s'exécuter blabla) et lorsque je lance le debugger ... je tombe sur une segmentation fault ... D'où le fait que je sois resté sur le mode release pendant un bout de temps ...

    J'en viens donc au fait : avez-vous déja eu cette erreur ? y'a-t-il une méthode spécifique à la compilation en mode debug avec wxWidgets, comment avez-vous fait pour l'utiliser (devpacks ou compilation perso ?) ...
    Je pense que donner les détails sur mon erreur serait un peu inutile (mais si ce n'est pas le cas n'hésitez pas à me le demander ) étant donné que même le programme le plus basique que wxWidgets puisse faire engendre cette erreur ...

    Autre précision tout de même ... en mode release je n'ai vraiment aucun soucis et les applications réalisées ne se contentent pas de dire hello world donc voilà

  6. #6
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Si tu télécharges le SDK wxWidgets, c'est aussi simple de compiler en Release qu'en Debug.

    Si ton crash survient toujours, c'est qu'il y a un vrai problème... Qui passe peut être inaperçu justement en release, mais qui pourrait potentiellement poser un vrai problème sur la machine cible.

  7. #7
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 148
    Points : 232
    Points
    232
    Par défaut
    J'avais en effet pensé à cette possibilité mais bon, c'est tout de même bizarre que je compile la lib sans problème, que la compilation du programme se fasse sans problème puis qu'il y ait un soucis au niveau de l'exécution uniquement :s ...

    Dans tous les cas, je vais essayer de voir d'où cela peut provenir et si je ne parviens pas à trouver la solution je posterais à nouveau, en attenant je passe ce post en résolu et encore merci pour vos réponses

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 34
    Points : 28
    Points
    28
    Par défaut
    Je me permets de poster car j'ai exactement le même soucis. Je programme avec Code::Blocks 8.02 et wxWidgets 2.8.9. La compilation se passe sans soucis à part quelques warnings. Par contre, lors de l'exécution j'obtiens "L'application n'a pas réussi à s'initialiser correctement (0xc0000005). Cliquez sur OK pour arrêter l'application." Je ne comprends pas pourquoi sachant que l'application, compilée avec gcc sous wxDevC++, fonctionne! C'est étrange. J'ai lu sur la toile que cela pouvait venir de pointeurs non initialisés pour ils le sont.
    Donc voila si quelqu'un avait une idée.
    Merci.

  9. #9
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Citation Envoyé par zoom* Voir le message
    Je me permets de poster car j'ai exactement le même soucis. Je programme avec Code::Blocks 8.02 et wxWidgets 2.8.9. La compilation se passe sans soucis à part quelques warnings. Par contre, lors de l'exécution j'obtiens "L'application n'a pas réussi à s'initialiser correctement (0xc0000005). Cliquez sur OK pour arrêter l'application." Je ne comprends pas pourquoi sachant que l'application, compilée avec gcc sous wxDevC++, fonctionne! C'est étrange. J'ai lu sur la toile que cela pouvait venir de pointeurs non initialisés pour ils le sont.
    Donc voila si quelqu'un avait une idée.
    Merci.
    1/ Crées plutôt un nouveau post car cela ressemble à un nouveau problème.
    2/ Mets un point d'arrêt à wxMyApp::OnInit et debugg pas à pas.
    3/ Si tu n'arrive pas à ce point, post ton wxMyApp.h et wxMyApp.cpp dans un premier temps.

  10. #10
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 148
    Points : 232
    Points
    232
    Par défaut
    Ayant trouvé la solution à mon problème, je la met ici.
    Dans la partie Build Options, Debug --> Compiler Settings / #defines, il fallait tout simplement ajouter
    __WXDEBUG__

    ...Voilà, je n'avais même pas pensé à vérifier que je l'avais mis ... triste quand même ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [API] Codage d'un moniteur de messages debug
    Par Pierre Castelain dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 15/01/2004, 20h47
  2. Réponses: 2
    Dernier message: 28/10/2003, 11h55
  3. Doc sur Debug de Ms-Dos
    Par gtr dans le forum Assembleur
    Réponses: 13
    Dernier message: 23/09/2003, 10h06
  4. [debug] performances / optimisation
    Par tmonjalo dans le forum C
    Réponses: 2
    Dernier message: 29/07/2003, 00h45
  5. [debug] fuites mémoires
    Par tmonjalo dans le forum C
    Réponses: 3
    Dernier message: 28/07/2003, 18h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo