Valgrind-3.12.0

Introduction à Valgrind

Valgrind est une boite à outils d'instrumentation pour construire des outils d'analyses dynamiques. Il y a les outils de Valgrind qui peuvent automatiquement détecter plusieurs bogues de gestion de mémoires et de threading, et des programmes de profilages en détail. Valgrind peut également être utilisé pour construire de nouveaux outils.

Ce paquet est connu pour se construire correctement sur une plateforme LFS-8.0.

Informations sur le paquet

  • Téléchargement (HTTP) : http://valgrind.org/downloads/valgrind-3.12.0.tar.bz2

  • Téléchargement (FTP) :

  • Somme de contrôle MD5 du téléchargement : 6eb03c0c10ea917013a7622e483d61bb

  • Taille du téléchargement : 12 Mo

  • Estimation de l'espace disque requis : 344 Mo (228 Mo supplémentaires pour les tests)

  • Estimation du temps de construction : 1.2 SBU (5.1 SBU supplémentaires pour les tests)

Dépendances de Valgrind

Facultatives

Boost-1.63.0, LLVM-3.9.1 (avec Clang), GDB-7.12.1 (pour les tests), Which-2.21 (pour les tests), BIND-9.11.0-P3 ou BIND Utilities-9.11.0-P3 (pour les tests) et OpenMP

Facultative pour générer la documentation

libxslt-1.1.29 et texlive-20160523b (ou install-tl-unx)

Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/valgrind

Installation de Valgrind

Installez Valgrind en lançant les commandes suivantes :

sed -i 's|/doc/valgrind||' docs/Makefile.in &&

./configure --prefix=/usr \
            --datadir=/usr/share/doc/valgrind-3.12.0 &&
make
[Note]

Note

Pour lancer les tests pour ce paquet, valgrind a besoin d'une version de /lib/ld-2.24.so (ou supérieur) avec les symboles de débogage. Normallement dans LFS ces symboles de débogages sont nettoyés à la fin du chapitre 6. Pour obtenir cette bibliothèque, glibc doit être reconstruit avec la version actuelle de glibc en utilisant le même compilateur qui a été utilisé pour construire LFS. Le fichier ld.so peut ensuite être renommé en ld-2.24.so.dbg et copié dans /lib. Ensuite un lien symbolique doit être changé :

ln -sfv ld-2.24.so.dbg /lib/ld-linux-x86-64.so.2

Ajustez les instructions ci-dessus comme requis pour un système 32-bit ou pour une version différente de glibc.

En plus, d'autres bibliothèques glibc avec les symboles de débogage peuvent être requises pour certains tests.

Pour tester le résultat, tapez : make regtest. Ces tests peuvent attendre indéfiniment si GDB-7.12.1 n'est pas installé.

Maintenant, en tant qu'utilisateur root :

make install

Explication des commandes

sed -i ... docs/Makefile.in  : Ce sed permet d'installer la documentation dans un répertoire versionné.

Contenu

Programmes installés: callgrind_annotate, callgrind_control, cg_annotate, cg_diff, cg_merge, ms_print, valgrind, valgrind-di-server, valgrind-listener et vgdb
Bibliothèque installée: libcoregrind-<Arch>-linux.a, libreplacemalloc_toolpreload-<Arch>-linux.a, libvex-<Arch>-linux.a, libvexmultiarch-amd64-linux.a, vgpreload_core-<Arch>-linux.so, vgpreload_drd-<Arch>-linux.so, vgpreload_exp-dhat-<Arch>-linux.so, vgpreload_exp-sgcheck-<Arch>-linux.so, vgpreload_helgrind-<Arch>-linux.so, vgpreload_massif-<Arch>-linux.so et vgpreload_memcheck-<Arch>-linux.so, où <Arch> est x86 ou amd64
Répertoires installés: /usr/lib/valgrind, /usr/include/valgrind et /usr/share/doc/valgrind-3.12.0

Descriptions courtes

valgrind

est un programme pour déboguer et profiler les exécutables Linux.

callgrind_annotate

prend en entré le fichier de sortie produit par l'outil Callgrind de Valgrind et affiche les informations dans une forme facile à lire.

callgrind_control

contrôle les programmes en train d'être lancés par l'outil Callgrind de Valgrind.

cg_annotate

est un outil de post-traitement pour l'outil Cachegrind de Valgrind.

cg_diff

compare deux fichiers de sortie de Cachegrind.

cg_merge

fusionne plusieurs fichiers de sortie de Cachegrind en un.

ms_print

prend un fichier de sortie produit par l'outil Massif de Valgrind et affiche les informations dans une forme facile à lire.

valgrind-di-server

est un serveur qui lit les informations de débogage des objets stockés sur un machine différente.

valgrind-listener

écoute les commentaires de Valgrind sur un socket.

vgdb

est un intermédiaire entre Valgrind et GDB ou un shell.

Last updated on 2017-02-15 07:04:32 +0100