LLDB
Def :
LLDB est un debbuger qui est plus souple et plus recent que GDB, il permet de debugger des langages de programmation plus récents, comme android, C+, et est adapté pour le dev MacOS et IOS.
LLDB est aussi intégré avec Python ce qui permet d'automatiser des tâches.
Utilisation :
Setup :
On choisit d'abord le programme a executer :
lldb <file>
Pour le lancer :
run
r
BreakPoints :
Pour set un breakpoint sur une fonction on peut faire :
breakpoint set --file foo.c --line 12
breakpoint set -f foo.c -l 12
breakpoint set --name foo
breakpoint set -n foo
breakpoint set -n foo --n bar
Il est aussi possible de prendre des actions lorsqu'un breakpoint est atteint en fonction d'une condition,par exemple :
breakpoint modify -c "self == nil" -C bt --auto-continue 1 2 3
Désormais les breakpoints 1,2,3 vont continuer automatiquement si self==nil
.
Et si on veut une configuration pour tous nos breakpoints à l'ajout :
breakpoint name configure -c "self == nil" -C bt --auto-continue SelfNil
# et pour l'utiliser, on donne le nom aux breakpoints qui vont prendre la conf :
breakpoints name configure -B 1 SelfNil
WatchPoints :
Pour créer des watchpoints :
watch set var global
watch modify -c '(global==5)'
watch list
Tips :
Il est aussi possible de créer des alias :
command alias b breakpoint
command unalias b