Lors du démarrage de gdb à partir de la ligne de commande du shell, vous pouvez spécifier quel programme exécuter, avec quels arguments (avec --args
), et même modifier l'environnement du programme à l'aide de env
!
Je viens de le faire avec succès comme ceci :
gdb --ex=run --args env LD_BIND=now LD_DEBUG=libs \
apt-get install --yes $(cat pkgs-to-install-to-crash-apt)
--ex=run
est de demander à gdb de l'exécuter immédiatement.
Dans votre cas, vous feriez env -i
.
Il diffère du env -i VAR=... gdb program
suggéré en ce que seul votre programme examiné est sous l'environnement spécial, mais pas gdb.
L'option 2 est possible.
(gdb) unset environment
(gdb) python gdb.execute("set environment Myvar=\xff")
(gdb) show environment
Myvar=ÿ
L'option 1 peut être effectuée avec env(1)
.
$ env -i MyVar=$(python -c 'print("xyz")') gdb
(gdb) show environment
MyVar=xyz
LINES=35
COLUMNS=80
Ensuite, il vous suffit d'effacer les LIGNES et les COLONNES.