Maison > développement back-end > C++ > le corps du texte

Pourquoi GDB signale-t-il une erreur de fichier manquant lors du débogage des exceptions C dans Ubuntu ?

DDD
Libérer: 2024-11-11 00:29:02
original
541 Les gens l'ont consulté

Why Does GDB Report a Missing File Error When Debugging C   Exceptions in Ubuntu?

GDB affiche une erreur de fichier manquant pour le code source de la bibliothèque

Lors de l'utilisation de GDB pour déboguer les exceptions C, les utilisateurs peuvent rencontrer un message d'erreur indiquant un fichier manquant fichier, tel que « Aucun fichier ou répertoire de ce type » pour « raise.c ». Cette erreur peut se produire même si l'exception est gérée correctement.

Solution : obtenir le code source de la bibliothèque et les informations de débogage

Pour résoudre ce problème, il est nécessaire d'obtenir le le code source et les informations de débogage de la bibliothèque appropriée, dans ce cas, libc6. Ubuntu fournit le package debuginfo à cet effet.

Étapes pour déboguer le code source de la bibliothèque C :

  1. Installez la version debuginfo de libc6 : sudo apt install libc6- dbg.
  2. Configurez le système de packages pour télécharger les packages de code source :

    • Installez dpkg-dev : sudo apt install dpkg-dev.
    • Décommentez " deb-src" dans /etc/apt/sources.list si nécessaire.
  3. Télécharger le code source :

    • Créer un répertoire : / opt/src.
    • Téléchargez le code source : apt source libc6.
    • Notez le répertoire du code source (par exemple, /opt/src/glibc-2.23).
  4. Ajustez le répertoire du code source de GDB :

    • Identifiez le répertoire du code source attendu à l'aide de la source d'informations (gdb).
    • Déplacez ou créez un lien symbolique vers le code source attendu emplacement, ou définir un chemin de remplacement : (gdb) set substitut-path /expected-location /actual-location.

Une fois ces étapes terminées, GDB pourra accédez au code source correct et fournissez des informations de débogage précises pour l'exception.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal