Précédent   Forum du club des développeurs et IT Pro > C et C++ > Outils pour C & C++ > GDB
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 15/10/2007, 15h14   #1
mamelouk
Membre chevronné
 
Avatar de mamelouk
 
Inscription : mai 2005
Messages : 865
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2005
Messages : 865
Points : 732
Points : 732
Par défaut gdb crashe, je fais quoi ?

bonjour à tous,

Voilà mon problème est simple : je veut debugguer un programme sous linux, et j'en ai marre des printf. Je lance gdb sur mon programme en console, mais il me rend la console sans rien afficher (et pourtant mon programme il en affiche des trucs).

Qu'est ce que je peut faire ?

Code :
1
2
3
4
5
6
7
8
9
10
11
12
$ gdb ./Debug/bin/stereoOccupancyTest 
GNU gdb 6.6-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
(gdb) run
Starting program: /home/Debug/bin/stereoOccupancyTest 
$
__________________

Débugger du code est deux fois plus dur que d'en écrire.
Donc, si vous écrivez votre code aussi intelligemment que vous le pouvez, vous n'etes, par définition, pas assez intelligent pour le débugger.
mamelouk est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/10/2007, 15h02   #2
mamelouk
Membre chevronné
 
Avatar de mamelouk
 
Inscription : mai 2005
Messages : 865
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2005
Messages : 865
Points : 732
Points : 732
Bon en fait j'ai trouvé le problème, qui est vachement étrange.

lorsque vous voyez :
Code :
1
2
Starting program: /home/Debug/bin/stereoOccupancyTest 
$
c'est gdb lance un shell, sans que je sache trop pourquoi, et qui interrompt l'execution de mon programme. Quand je quitte ce shell en tapant Ctrl-D, mon programme reprend la main :

Code :
1
2
3
4
5
6
7
8
9
$ exit
[Thread debugging using libthread_db enabled]
[New Thread -1233160496 (LWP 10012)]
 
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1233160496 (LWP 10012)]
0xb7e851c1 in SVSServer::step (this=0x80569f8) at /local_home/workspace/love/SensorModels/StereoGrid/src/SVSServer.cpp:82
82          leftImg = leftSequence->getNext();
(gdb)
space
__________________

Débugger du code est deux fois plus dur que d'en écrire.
Donc, si vous écrivez votre code aussi intelligemment que vous le pouvez, vous n'etes, par définition, pas assez intelligent pour le débugger.
mamelouk est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 15h30.


 
 
 
 
Partenaires

Hébergement Web