Re: Deboguer un paquetage
Le jeudi 30 janvier 2003 à 09:49:38, Frédéric Bothamy a écrit:
> * David Boucher <bouda1@wanadoo.fr> [2003-01-29 14:50] :
> > Merci pour ce début de réponse mais ça je l'ai déjà fait, mon
> > problème est après, pendant que je débogue, gdb n'a pas les infos
> > pour me permettre de voir ce qui se passe dans la librairie.
>
> Dans ce cas, il faut modifier le Makefile et recompiler le paquet avec
> les options de déboguage (par exemple, -g et autres pour gcc) et
> normalement, cela devrait fonctionner.
La Debian policy définit les arguments noopt et nostrip pour
DEB_BUILD_OPTIONS
11.1. Les fichiers binaires
[...]
Bien que les binaires dans l'arbre de construction soient compilés par
défaut avec des informations pour le débogage, il est souvent
difficile de déboguer les programmes qui sont soumis à des
optimisations pour compilateur. Pour cette raison, il est conseillé
de reconnaître la variable d'environnement standard
`DEB_BUILD_OPTIONS'. Cette variable peut contenir plusieurs drapeaux
de manière à pouvoir modifier la construction et la compilation d'un
paquet.
noopt
La présence de cette chaîne signifie que le paquet ne sera soumis
qu'à un minimum d'optimisation. Pour les les programmes en C, il
vaut mieux ajouter `-O0' à `CFLAGS' (bien que ce soit le défaut).
Il peut arriver que quelques programmes ne se construisent pas ou
ne fonctionnent pas à ce niveau d'optimisation : il peut être
nécessaire, par exemple, d'utiliser `-O1'.
nostrip
Cette chaîne signifie que les symboles de débogage ne seront pas
enlevés du binaire pendant l'installation de manière à ce que les
informations pour le débogage puissent être incluses dans le
paquet.
Il suffit de faire :
$ DEB_BUILD_OPTIONS="noopt nostrip" debuild
Il ne semble pas que cela soit pas applicable (dans la policy) aux
bibliothèques. Pourquoi ? Ça pourrait servir justement.
Il _faut_ que chaque bibliothèque truc crée un paquet truc-dbg ?
À+
--
Dr. Ludovic Rousseau Ludovic.Rousseau@free.fr
-- Normaliser Unix c'est comme pasteuriser le Camembert, L.R. --
Reply to: