2009-08-06 5 views
3

Voici une liste des points de rupture pour mettre en ~/.gdbinit qui sont très utiles pour le débogage des problèmes de mémoire:Comment définir ces points de rupture dans ~/.gdbinit?

fb -[NSException raise] 
fb -[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] 
fb -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] 

#define NSZombies 
# this will give you help messages. Set to NO to turn them off. 
set env MallocHelp=YES 
# might also be set in launch arguments. 
set env NSZombieEnabled=YES 
set env NSDeallocateZombies=NO 
set env MallocCheckHeapEach=100000 
set env MallocCheckHeapStart=100000 
set env MallocScribble=YES 
set env MallocGuardEdges=YES 
set env MallocCheckHeapAbort=1 

set env CFZombie 5 

fb -[_NSZombie init] 
fb -[_NSZombie retainCount] 
fb -[_NSZombie retain] 
fb -[_NSZombie release] 
fb -[_NSZombie autorelease] 
fb -[_NSZombie methodSignatureForSelector:] 
fb -[_NSZombie respondsToSelector:] 
fb -[_NSZombie forwardInvocation:] 
fb -[_NSZombie class] 
fb -[_NSZombie dealloc] 

fb szone_error 
+0

Ceux-ci peuvent en effet être utiles, mais y at-il une question dans le cadre de cela? SO n'est pas un wiki pour poster des conseils utiles - ceux-ci appartiennent sur http://www.cocoadev.com, au moins pour Objective-C et Cocoa. –

+0

@Quinn: il peut être, mais selon la FAQ, il devrait être posté comme une question que vous pouvez alors répondre vous-même;) –

Répondre

3

Le titre de cela indique que vous demandez comment définissez ces paramètres dans ~/.gdbinit mais la première ligne de votre question détaillée indique que vous avez ce qui précède dans ~/.gdbinit?

Quel est exactement le problème, alors? J'utilise quelque chose de très similaire et cela fonctionne bien, mais comme une grande partie de ceci est des changements de comportement assez intrusifs, je le mets dans un fichier séparé (~/.gdbmem) et ensuite le source si nécessaire. Mon ~/.gdbinit est presque entièrement limité aux définitions de macro qui ne modifient pas la session de débogage. Ainsi, le comportement par défaut est un impact minime sur le débogage et je peux trouver l'un des 2 fichiers supplémentaires remplis de gdb config goop pour appliquer automatiquement une configuration supplémentaire relativement intrusive à l'environnement.

+0

Je ne sais pas ce que c'est ~ /. Gdbinit? où devrais-je chercher ceci dans xcode ??? –

+0

Ce n'est pas dans Xcode; .gdbinit est un fichier que vous pouvez déposer dans votre répertoire personnel et que gdb analysera lors du lancement de gdb, soit depuis la ligne de commande, soit depuis Xcode. – bbum

+0

pourriez-vous s'il vous plaît le rendre plus clair ... comment puis-je créer le fichier .gdbinit et comment analyser cela à partir de xcode –

Questions connexes