Maison > développement back-end > C++ > Comment puis-je déboguer de manière fiable les fichiers de base générés sur différentes distributions Linux ?

Comment puis-je déboguer de manière fiable les fichiers de base générés sur différentes distributions Linux ?

Linda Hamilton
Libérer: 2024-12-06 18:12:14
original
824 Les gens l'ont consulté

How Can I Reliably Debug Core Files Generated on Different Linux Distributions?

Débogage des fichiers principaux générés sur différentes distributions

Signification des fichiers principaux dans toutes les distributions

Lors du débogage des fichiers principaux générés sur une distribution Linux autre que l'environnement de développement , la trace de la pile peut ne pas être fiable. Les exécutables liés dynamiquement utilisent des bibliothèques partagées qui peuvent avoir des implémentations différentes selon la distribution. GDB tentera d'utiliser les versions de bibliothèque disponibles dans l'environnement de développement, qui peuvent différer de celles du système du client. Par conséquent, les adresses de pile peuvent correspondre à différentes routines ou être situées dans des instructions, indiquant une trace de pile inexacte.

Résoudre les problèmes de signification

Pour obtenir une trace de pile significative, acquérez toutes les bibliothèques partagées de le système du client et définissez le chemin solib-absolute-prefix dans GDB. Cela redirigera GDB vers l'utilisation des bibliothèques du client pour la résolution des symboles.

Approche de débogage

Au lieu de conseiller aux clients d'exécuter un binaire -g, il est recommandé de :

  1. Compilez avec -g -O2 pour créer un binaire de débogage (myexe.dbg).
  2. Supprimez le débogage informations (strip -g myexe.dbg) pour créer un binaire de production (myexe).
  3. Distribuez myexe aux clients.
  4. Utilisez myexe.dbg lors du débogage des fichiers principaux générés par le client.

Cette approche fournit des informations symboliques complètes sans envoyer de binaire de débogage aux clients ni exposer de source sensible. code.

Ressources de débogage

Pour plus d'informations sur le débogage, pensez à vous référer aux ressources suivantes :

  • Linux :

    • "Outils de débogage Linux" par Leonid Evdokimov
    • "Maîtriser le débogage du système sous Linux" par Paul Turner
  • Solaris :

    • " Système Solaris et réglage des performances" par Mike Wilson
    • "Performances pratiques de Solaris Dépannage et réglage" de Mark Burgess

Ces livres offrent des exemples concrets et des techniques avancées de débogage sous Linux et Solaris, y compris l'analyse d'assemblage.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal