Introduction à GDB
GDB, le débogueur du projet GNU,
permet de voir ce qu'il se passe « à
l'intérieur » d'un autre programme, pendant
qu'il s'exécute — ou ce que faisait un autre programme au
moment où il a planté. Notez que GDB est plus performant quand les programmes
et les bibliothèques tracées sont construits avec les symboles de
débogage et qu'ils n'ont pas été nettoyés.
Ce paquet est connu pour se construire correctement sur une
plateforme LFS-8.3.
Informations sur le paquet
-
Téléchargement (HTTP) : https://ftp.gnu.org/gnu/gdb/gdb-8.1.1.tar.xz
-
Téléchargement (FTP) : ftp://ftp.gnu.org/gnu/gdb/gdb-8.1.1.tar.xz
-
Somme de contrôle MD5 du téléchargement :
372fa63a53adeee1bfbfd581d8da9e34
-
Taille du téléchargement : 19 Mo
-
Estimation de l'espace disque requis : 667 Mo (753 Mo
supplémentaires pour les tests, 757 Mo supplémentaires pour
la documentation)
-
Estimation du temps de construction : 5.0 SBU (56 SBU
supplémentaires pour les tests et 0.8 pour la documentation)
Dépendances de GDB
Facultatives
DejaGnu-1.6.1 (pour les tests), Doxygen-1.8.14,
GCC-8.2.0
(ada et gfortran sont utilisés pour certains tests), Guile-2.2.4
(actuellement cassé), Python-2.7.15, rustc-1.25.0 (pour certains tests),
Valgrind-3.13.0 et SystemTap (dépendance
d'exécution, aussi utilisé pour quelques tests)
Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/gdb
Installation de GDB
Installez GDB en lançant les
commandes suivantes :
./configure --prefix=/usr --with-system-readline &&
make
Facultativement, pour construire la documentation de l'API en
utilisant Doxygen-1.8.14, lancez :
make -C gdb/doc doxy
Pour tester les résultats, lancez :
pushd gdb/testsuite &&
make site.exp &&
echo "set gdb_test_timeout 120" >> site.exp &&
runtest TRANSCRIPT=y
popd
Voir gdb/testsuite/README et
TestingGDB. Il y a
plein de problème avec la suite de tests :
-
Des répertoires propres sont requis si vous relancez les
tests. Pour cette raison, il est recommandé de créer une
copie du répertoire des codes sources compilés avant les
tests au cas où vous devriez relancer les tests.
-
Les résultats dépendent des compilateurs installés.
-
Il y a beaucoup de dépassement de délai (il y a une variable
qui peut être initialisée pour augmenter le délai, mais la
changer changera le nombre de tests lancés).
-
Il y a des échecs associés avec readline 6.x du système.
-
Quelques tests supposent les le fichier d'en-tête
<sys/sdt.h>
, faisant
partie de SystemTap est
présent.
-
Environ 1-3 % des tests échouent (sur plus de 53000
tests).
Maintenant, en tant qu'utilisateur root
:
make -C gdb install
Si vous avez construit la documentation de l'API, c'est maintenant
dans gdb/doc/doxy. Vous pouvez l'installer (en tant qu'utilisateur
root
) :
install -d /usr/share/doc/gdb-8.1.1 &&
rm -rf gdb/doc/doxy/xml &&
cp -Rv gdb/doc/doxy /usr/share/doc/gdb-8.1.1