Comment puis-je configurer gdb dans la fenêtre afin qu'elle ne permet pas un programme avec échec d'assertion de mettre fin? J'ai l'intention de vérifier la trace de la pile et les variables dans le programme.programme MinGW avec Debugging gdb sous Windows, ne pas mettre fin à l'échec assert
Par exemple, l'exécution de ce programme test.cpp compilé avec MinGW 'g++ -g test.cpp -o test
' dans gdb:
#include <cassert>
int main(int argc, char ** argv) { assert(1==2); return 0; }
donne:
$ gdb test.exe
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-mingw32"...
(gdb) r
Starting program: f:\code/test.exe
[New thread 4616.0x1200]
Error: dll starting at 0x77030000 not found.
Error: dll starting at 0x75f80000 not found.
Error: dll starting at 0x77030000 not found.
Error: dll starting at 0x76f30000 not found.
Assertion failed: 1==2, file test.cpp, line 2
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
Program exited with code 03.
(gdb)
Je voudrais être en mesure d'arrêter le programme de mettre fin à immédiatement, comme le fait le débogueur de Visual Studio et gdb sous Linux. J'ai fait une recherche et trouvé des trucs sur les pièges, mais je n'arrive pas à trouver un bon article sur comment configurer gdb pour faire ça.
comment puis-je arrêter de se poser des questions sur: Fonction « exit » ne définit pas les symboles chargés. Mettre en attente le point d'arrêt sur la future charge de bibliothèque partagée? (Y ou [n]) y point d'arrêt 1 (sortie) en attente. – devil