[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: