Installez les symboles de débogage pour les interprètes Python dans Visual Studio

Cet article donne la procédure à suivre pour télécharger et intégrer les symboles de débogage pour les interprètes Python dans Visual Studio.

Pour offrir une expérience de débogage complète, le débogueur Python en mode mixte dans Visual Studio a besoin de symboles de débogage pour l’interpréteur Python afin d’analyser de nombreuses structures de données internes. Les symboles de débogage sont définis dans des fichiers de base de données de programmes (.pdb). Par exemple, la bibliothèque python27.dll nécessite le fichier de symboles python27.pdb, la bibliothèque python36.dll utilise le fichier de symboles python36.pdb, etc. Chaque version de l’interpréteur fournit également des fichiers de symboles pour divers modules.

  • Dans Visual Studio 2017 et les version ultérieures, les interprètes Python 3 et Anaconda 3 installent automatiquement leurs symboles respectifs et Visual Studio les détecte automatiquement.

  • Dans Visual Studio 2015 et les versions antérieures, ou pour d’autres interprètes, vous devez télécharger les symboles séparément, puis indiquer à Visual Studio les fichiers.

Lorsque Visual Studio détecte des symboles requis manquants, une boîte de dialogue vous invite à agir. Vous voyez généralement la boîte de dialogue lorsque vous démarrez une session de débogage mixte. La boîte de dialogue comprend le lien Ouvrir la boîte de dialogue des paramètres de symboles, qui ouvre la boîte de dialogue Outils>Options vers l’onglet Débogage>Symboles, ainsi qu’un lien vers cet article de documentation.

Capture d’écran montrant l’invite dans Visual Studio pour fournir les symboles de débogage requis manquants.

Prérequis

Vérifiez la version de votre interpréteur

Les symboles diffèrent entre les versions mineures de Python et entre les versions 32 bits et 64 bits. Il est important de confirmer la version et la construction de Python que vous utilisez pour vous assurer d’avoir les symboles corrects pour votre interpréteur.

Pour vérifier quel interpréteur Python est utilisé :

  1. Dans l’Explorateur de solutions, développez le nœudEnvironnements Python sous votre projet.

  2. Localisez le nom de l’environnement actuel (affiché en gras).

  3. Faites un clic droit sur le nom de l’environnement et sélectionnez Ouvrir l’invite de commandes ici.

    Une fenêtre d’invite de commandes s’ouvre à l’emplacement d’installation de l’environnement actuel.

  4. Démarrez python en saisissant la commande suivante :

    python.exe
    

    Le processus d’exécution affiche votre version de Python installée et indique si elle est en 32 bits ou en 64 bits :

    Capture d’écran montrant comment utiliser une invite de commandes ouverte à l’emplacement d’installation de l’environnement actuel pour détecter la version de Python.

Télécharger des symboles

Les étapes suivantes décrivent comment télécharger les symboles requis pour un interpréteur Python.

  • Pour Python 3.5 et les versions ultérieures, vous pouvez acquérir les symboles de débogage via l’installateur Python.

    1. Sélectionnez Installation personnalisée, puis cliquez sur Suivant.

    2. Sur la page Options avancées, sélectionnez les cases pour Télécharger les symboles de débogage et Télécharger les binaires de débogage :

      Capture d’écran montrant comment sélectionner des symboles de débogage et des fichiers binaires dans le programme d’installation de Python 3.x.

    Les fichiers de symboles (.pdb) se trouvent dans le dossier d’installation principal. Les fichiers de symboles pour les modules individuels sont également placés dans le dossier DLLs.

    Visual Studio trouve automatiquement ces symboles. Aucune autre étape n’est nécessaire.

  • Pour Python 3.4.x et les versions antérieures, les symboles sont disponibles sous forme de fichiers .zip téléchargeables à partir des canaux de distribution officiels ou d’Enthought Canopy.

    1. Téléchargez le fichier de symboles requis.

      Important

      Assurez-vous de sélectionner le fichier de symboles qui correspond à votre version et construction de Python installée (32 bits ou 64 bits).

    2. Extrayez les fichiers de symboles dans un dossier local à l’intérieur du dossier Python, tel que Symbols.

    3. Après avoir extrait les fichiers, la prochaine étape est de pointer Visual Studio vers les symboles.

  • Pour d’autres distributions Python tierces telles qu’ActiveState Python, contactez les auteurs de cette distribution et demandez-leur de vous fournir des symboles.

    WinPython intègre l’interpréteur Python standard sans modifications. Vous pouvez utiliser les symboles de la distribution officielle WinPython pour le numéro de version correspondant.

Indiquer les symboles à Visual Studio

Si vous avez téléchargé des symboles séparément, suivez ces étapes pour que Visual Studio soit informé des symboles.

Remarque

Si vous avez installé des symboles en utilisant l’installateur Python 3.5 ou ultérieur, Visual Studio trouve automatiquement les symboles. Vous n’avez pas besoin de compléter les étapes de cette section.

  1. Sélectionnez Outils>Options, et ouvrez l’onglet Débogage>Symboles.

  2. Sélectionnez Ajouter (symbole plus) sur la barre d’outils.

  3. Entrez le chemin d’accès du dossier où vous avez extrait les symboles téléchargés. Cet emplacement est celui où se trouve le fichier python.pdb, tel que c:\python34\Symbols, comme indiqué dans l’image suivante.

    Capture d’écran montrant les options de symboles du débogueur en mode mixte dans la boîte de dialogue Débogage des options d’outils.

  4. Cliquez sur OK.

Pendant une session de débogage, Visual Studio peut également vous demander d’indiquer l’emplacement d’un fichier source pour l’interpréteur Python. Si vous avez téléchargé des fichiers source, tels que depuis python.org/downloads/, vous pouvez indiquer à Visual Studio les fichiers téléchargés.

Options de mise en cache des symboles

La boîte de dialogue Outils>Options, Débogage>Symboles contient également des options pour configurer la mise en cache des symboles. Visual Studio utilise les fonctionnalités de mise en cache des symboles pour créer un cache local des symboles obtenus à partir d’une source en ligne.

Ces fonctionnalités ne sont pas nécessaires avec les symboles de l’interpréteur Python car les symboles sont déjà présents localement. Pour plus d’informations, veuillez consulter la section Spécifier les symboles et les fichiers source dans le débogueur Visual Studio.

Rendez-vous dans les téléchargements pour les canaux de distribution officiels

Le tableau suivant répertorie les informations de téléchargement pour les versions officielles de Python.

Version Python Téléchargements
3.5 et ultérieur Installez les symboles à l’aide du programme d’installation de Python.
3.4.4 32 bits - 64 bits
3.4.3 32 bits - 64 bits
3.4.2 32 bits - 64 bits
3.4.1 32 bits - 64 bits
3.4.0 32 bits - 64 bits
3.3.5 32 bits - 64 bits
3.3.4 32 bits - 64 bits
3.3.3 32 bits - 64 bits
3.3.2 32 bits - 64 bits
3.3.1 32 bits - 64 bits
3.3.0 32 bits - 64 bits
2.7.18 32 bits - 64 bits
2.7.17 32 bits - 64 bits
2.7.16 32 bits - 64 bits
2.7.15 32 bits - 64 bits
2.7.14 32 bits - 64 bits
2.7.13 32 bits - 64 bits
2.7.12 32 bits - 64 bits
2.7.11 32 bits - 64 bits
2.7.10 32 bits - 64 bits
2.7.9 32 bits - 64 bits
2.7.8 32 bits - 64 bits
2.7.7 32 bits - 64 bits
2.7.6 32 bits - 64 bits
2.7.5 32 bits - 64 bits
2.7.4 32 bits - 64 bits
2.7.3 32 bits - 64 bits
2.7.2 32 bits - 64 bits
2.7.1 32 bits - 64 bits

Utilisez les symboles d’Enthought Canopy

Enthought Canopy fournit des symboles de débogage pour ses binaires à partir de la version 1.2. Ces symboles sont automatiquement installés avec la distribution.

  • Pour utiliser les symboles, ajoutez manuellement le dossier contenant les symboles au chemin des symboles, comme décrit dans Pointer Visual Studio vers les symboles.

    Pour une installation typique par utilisateur de Canopy, les symboles sont situés dans les dossiers suivants :

    • Version 64 bits : %UserProfile%\AppData\Local\Enthought\Canopy\User\Scripts
    • Version 32 bits : %UserProfile%\AppData\Local\Enthought\Canopy32\User\Scripts

Enthought Canopy 1.1 et les versions antérieures et Enthought Python Distribution (EPD), ne fournissent pas de symboles d’interpréteur. Ces versions ne sont pas compatibles avec le débogage mixte.