J'utilise gdb couramment (en fait, en général une interface graphique par
dessus la moitié du temps, mais ça revient au même pour mes questions), et
y'a deux petits trucs que je ne sais pas comment faire (si c'est faisable)
:
- d'abord, au lancement, je voudrais bien qu'il ne me dise pas toutes les
bibliothèques qu'il charge (toutes les lignes "Reading symbols" / "Loaded
symbols", parce que vu le nombre, ça occuppe plein de place et je trouve
pas ça beau (de cheval). L'option -q ne change pas ça.
- plus sérieusement (l'autre, c'était juste cosmétique), j'ai un tas de
bibliothèques, dont dépend mon programme, et qui sont compilées en mode
debug parce que dès fois j'ai besoin d'aller voir dans le détail ce qui
s'y passe. Mais la plupart du temps, je ne veux débugguer que mon
programme. J'aimerais donc pouvoir ne faire charger par gdb *que* les
bibliothèques de mon programme (elles sont toutes dans un même répertoire,
si ça peut aider), et pas les autres -- enfin, pour les autres, ne pas
charger les symboles de debug, je veux dire.
Et là, je ne sais pas du tout comment faire. J'ai vaguement cherché du
côté des variables d'environnement de ld.so, mais rien.
C'est assez ennuyeux, parce que le chargement de toutes ces bibliothèques
supplémentaires me prend bien 2 minutes, c'est un peu longuet. Je ne veux
pas compiler mes autres bibliothèques en "release", parce que d'une part
j'ai parfois besoin d'aller les débugguer (ouais, bon, elles sont pas
parfaites), et d'autre part elles sont assez grosses pour que je n'ai pas
envie de me trimballer simultanément une version release et une version
debug (pour suivant les jours). C'est pour ça que je voudrais pouvoir dire
à gdb de ne pas charger certaines bibliothèques, et c'est tout.
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
--8323584-1297063658-1094560587=:1505--
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Stephane Chazelas
2004-09-7, 14:36(+02), Remi Moyen:
This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools.
Ce qui est /mal/.
[...]
J'aimerais donc pouvoir ne faire charger par gdb *que* les bibliothèques de mon programme (elles sont toutes dans un même répertoire, si ça peut aider), et pas les autres -- enfin, pour les autres, ne pas charger les symboles de debug, je veux dire. [...]
<< There are times, however, when you may wish to not automatically load symbol definitions from shared libraries, such as when they are particularly large or there are many of them.
To control the automatic loading of shared library symbols, use the commands:
`set auto-solib-add MODE' If MODE is `on', symbols from all shared object libraries will be loaded automatically when the inferior begins execution, you attach to an independently started inferior, or when the dynamic linker informs GDB that a new library has been loaded. If MODE is `off', symbols must be loaded manually, using the `sharedlibrary' command. The default value is `on'.
[...]
info -f gdb -n Files
-- Stephane
2004-09-7, 14:36(+02), Remi Moyen:
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
Ce qui est /mal/.
[...]
J'aimerais donc pouvoir ne faire charger par gdb *que* les
bibliothèques de mon programme (elles sont toutes dans un même répertoire,
si ça peut aider), et pas les autres -- enfin, pour les autres, ne pas
charger les symboles de debug, je veux dire.
[...]
<<
There are times, however, when you may wish to not automatically load
symbol definitions from shared libraries, such as when they are
particularly large or there are many of them.
To control the automatic loading of shared library symbols, use the
commands:
`set auto-solib-add MODE'
If MODE is `on', symbols from all shared object libraries will be
loaded automatically when the inferior begins execution, you
attach to an independently started inferior, or when the dynamic
linker informs GDB that a new library has been loaded. If MODE is
`off', symbols must be loaded manually, using the `sharedlibrary'
command. The default value is `on'.
This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools.
Ce qui est /mal/.
[...]
J'aimerais donc pouvoir ne faire charger par gdb *que* les bibliothèques de mon programme (elles sont toutes dans un même répertoire, si ça peut aider), et pas les autres -- enfin, pour les autres, ne pas charger les symboles de debug, je veux dire. [...]
<< There are times, however, when you may wish to not automatically load symbol definitions from shared libraries, such as when they are particularly large or there are many of them.
To control the automatic loading of shared library symbols, use the commands:
`set auto-solib-add MODE' If MODE is `on', symbols from all shared object libraries will be loaded automatically when the inferior begins execution, you attach to an independently started inferior, or when the dynamic linker informs GDB that a new library has been loaded. If MODE is `off', symbols must be loaded manually, using the `sharedlibrary' command. The default value is `on'.
[...]
info -f gdb -n Files
-- Stephane
Remi Moyen
On Tue, 7 Sep 2004, Stephane Chazelas wrote:
2004-09-7, 14:36(+02), Remi Moyen:
This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools.
Ce qui est /mal/.
En effet. Une mise à jour de mon mailer (Pine), qui m'a changé ça sans rien dire. J'espère que ça va mieux maintenant (sinon, j'irais voir là où il faut). Merci de me le faire remarquer, je trouvais qu'il y avait un comportement un peu bizarre, sans vraiment comprendre pourquoi.
J'aimerais donc pouvoir ne faire charger par gdb *que* les bibliothèques de mon programme (elles sont toutes dans un même répertoire, si ça peut aider), et pas les autres -- enfin, pour les autres, ne pas charger les symboles de debug, je veux dire. [...]
`set auto-solib-add MODE' If MODE is `on', symbols from all shared object libraries will be loaded automatically when the inferior begins execution, you attach to an independently started inferior, or when the dynamic linker informs GDB that a new library has been loaded. If MODE is `off', symbols must be loaded manually, using the `sharedlibrary' command. The default value is `on'.
Excellent, merci ! Je n'ai plus qu'à mettre dans ma config la liste des bibliothèques dont j'ai vraiment besoin. Parfait.
Et pour mon autre question, pas d'idée ? -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
On Tue, 7 Sep 2004, Stephane Chazelas wrote:
2004-09-7, 14:36(+02), Remi Moyen:
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
Ce qui est /mal/.
En effet. Une mise à jour de mon mailer (Pine), qui m'a changé ça sans
rien dire. J'espère que ça va mieux maintenant (sinon, j'irais voir là où
il faut). Merci de me le faire remarquer, je trouvais qu'il y avait un
comportement un peu bizarre, sans vraiment comprendre pourquoi.
J'aimerais donc pouvoir ne faire charger par gdb *que* les
bibliothèques de mon programme (elles sont toutes dans un même répertoire,
si ça peut aider), et pas les autres -- enfin, pour les autres, ne pas
charger les symboles de debug, je veux dire.
[...]
`set auto-solib-add MODE'
If MODE is `on', symbols from all shared object libraries will be
loaded automatically when the inferior begins execution, you
attach to an independently started inferior, or when the dynamic
linker informs GDB that a new library has been loaded. If MODE is
`off', symbols must be loaded manually, using the `sharedlibrary'
command. The default value is `on'.
Excellent, merci !
Je n'ai plus qu'à mettre dans ma config la liste des bibliothèques dont
j'ai vraiment besoin. Parfait.
Et pour mon autre question, pas d'idée ?
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools.
Ce qui est /mal/.
En effet. Une mise à jour de mon mailer (Pine), qui m'a changé ça sans rien dire. J'espère que ça va mieux maintenant (sinon, j'irais voir là où il faut). Merci de me le faire remarquer, je trouvais qu'il y avait un comportement un peu bizarre, sans vraiment comprendre pourquoi.
J'aimerais donc pouvoir ne faire charger par gdb *que* les bibliothèques de mon programme (elles sont toutes dans un même répertoire, si ça peut aider), et pas les autres -- enfin, pour les autres, ne pas charger les symboles de debug, je veux dire. [...]
`set auto-solib-add MODE' If MODE is `on', symbols from all shared object libraries will be loaded automatically when the inferior begins execution, you attach to an independently started inferior, or when the dynamic linker informs GDB that a new library has been loaded. If MODE is `off', symbols must be loaded manually, using the `sharedlibrary' command. The default value is `on'.
Excellent, merci ! Je n'ai plus qu'à mettre dans ma config la liste des bibliothèques dont j'ai vraiment besoin. Parfait.
Et pour mon autre question, pas d'idée ? -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
Stephane Chazelas
2004-09-7, 14:36(+02), Remi Moyen: [...]
- d'abord, au lancement, je voudrais bien qu'il ne me dise pas toutes les bibliothèques qu'il charge (toutes les lignes "Reading symbols" / "Loaded symbols", parce que vu le nombre, ça occuppe plein de place et je trouve pas ça beau (de cheval). L'option -q ne change pas ça. [...]
Ces messages sont affiché si "verbose" est on ou quand les commandes sont tapees au prompt.
Tu peux faire un define myrun run end
Et si tu fais un "myrun" au lieu de "run" dans gdb, tu n'auras pas les messages de "reading symbol" lors du "run"
-- Stephane
2004-09-7, 14:36(+02), Remi Moyen:
[...]
- d'abord, au lancement, je voudrais bien qu'il ne me dise pas toutes les
bibliothèques qu'il charge (toutes les lignes "Reading symbols" / "Loaded
symbols", parce que vu le nombre, ça occuppe plein de place et je trouve
pas ça beau (de cheval). L'option -q ne change pas ça.
[...]
Ces messages sont affiché si "verbose" est on ou quand les
commandes sont tapees au prompt.
Tu peux faire un
define myrun
run
end
Et si tu fais un "myrun" au lieu de "run" dans gdb, tu
n'auras pas les messages de "reading symbol" lors du "run"
- d'abord, au lancement, je voudrais bien qu'il ne me dise pas toutes les bibliothèques qu'il charge (toutes les lignes "Reading symbols" / "Loaded symbols", parce que vu le nombre, ça occuppe plein de place et je trouve pas ça beau (de cheval). L'option -q ne change pas ça. [...]
Ces messages sont affiché si "verbose" est on ou quand les commandes sont tapees au prompt.
Tu peux faire un define myrun run end
Et si tu fais un "myrun" au lieu de "run" dans gdb, tu n'auras pas les messages de "reading symbol" lors du "run"
-- Stephane
Remi Moyen
On Tue, 7 Sep 2004, Stephane Chazelas wrote:
- d'abord, au lancement, je voudrais bien qu'il ne me dise pas toutes les bibliothèques qu'il charge (toutes les lignes "Reading symbols" / "Loaded symbols", parce que vu le nombre, ça occuppe plein de place et je trouve pas ça beau (de cheval). L'option -q ne change pas ça. [...]
Ces messages sont affiché si "verbose" est on ou quand les commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon .gdbinit :
set verbose off show verbose [et d'autres trucs après]
puis je lance "gdb mon_programme core", il me dit bien "Verbosity is off." *avant* de charger la moindre bibliothèque... mais il met quand même tous les messages de chargement !
J'ai pas tout compris, je pense... -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
On Tue, 7 Sep 2004, Stephane Chazelas wrote:
- d'abord, au lancement, je voudrais bien qu'il ne me dise pas toutes les
bibliothèques qu'il charge (toutes les lignes "Reading symbols" / "Loaded
symbols", parce que vu le nombre, ça occuppe plein de place et je trouve
pas ça beau (de cheval). L'option -q ne change pas ça.
[...]
Ces messages sont affiché si "verbose" est on ou quand les
commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages
les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon
.gdbinit :
set verbose off
show verbose
[et d'autres trucs après]
puis je lance "gdb mon_programme core", il me dit bien "Verbosity is off."
*avant* de charger la moindre bibliothèque... mais il met quand même tous
les messages de chargement !
J'ai pas tout compris, je pense...
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
- d'abord, au lancement, je voudrais bien qu'il ne me dise pas toutes les bibliothèques qu'il charge (toutes les lignes "Reading symbols" / "Loaded symbols", parce que vu le nombre, ça occuppe plein de place et je trouve pas ça beau (de cheval). L'option -q ne change pas ça. [...]
Ces messages sont affiché si "verbose" est on ou quand les commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon .gdbinit :
set verbose off show verbose [et d'autres trucs après]
puis je lance "gdb mon_programme core", il me dit bien "Verbosity is off." *avant* de charger la moindre bibliothèque... mais il met quand même tous les messages de chargement !
J'ai pas tout compris, je pense... -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
Stephane Chazelas
2004-09-8, 10:26(+02), Remi Moyen: [...]
Ces messages sont affiché si "verbose" est on ou quand les commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon .gdbinit : [...]
Mets:
def c core-file core end
dans ton .gdbinit,
lance gdb par:
gdb mon_programme
et ensuite tape "c" au prompt de gdb.
-- Stephane
2004-09-8, 10:26(+02), Remi Moyen:
[...]
Ces messages sont affiché si "verbose" est on ou quand les
commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages
les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon
.gdbinit :
[...]
Ces messages sont affiché si "verbose" est on ou quand les commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon .gdbinit : [...]
Mets:
def c core-file core end
dans ton .gdbinit,
lance gdb par:
gdb mon_programme
et ensuite tape "c" au prompt de gdb.
-- Stephane
Remi Moyen
On Wed, 8 Sep 2004, Stephane Chazelas wrote:
Ces messages sont affiché si "verbose" est on ou quand les commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon .gdbinit : [...]
Mets:
def c core-file core end
dans ton .gdbinit,
lance gdb par:
gdb mon_programme
et ensuite tape "c" au prompt de gdb.
Nickel, merci ! -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
On Wed, 8 Sep 2004, Stephane Chazelas wrote:
Ces messages sont affiché si "verbose" est on ou quand les
commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages
les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon
.gdbinit :
[...]
Mets:
def c
core-file core
end
dans ton .gdbinit,
lance gdb par:
gdb mon_programme
et ensuite tape "c" au prompt de gdb.
Nickel, merci !
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
Ces messages sont affiché si "verbose" est on ou quand les commandes sont tapees au prompt.
Hum. Si je lance directement un "gdb mon_programme core" (un de mes usages les plus fréquents !), ça ne marche pas. Je veux dire, je mets dans mon .gdbinit : [...]
Mets:
def c core-file core end
dans ton .gdbinit,
lance gdb par:
gdb mon_programme
et ensuite tape "c" au prompt de gdb.
Nickel, merci ! -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."