Установка символов отладки для интерпретаторов Python в Visual Studio

В этой статье приведены инструкции по скачиванию и интеграции символов отладки для интерпретаторов Python в Visual Studio.

Чтобы обеспечить полную отладку, отладчик Python в Смешанном режиме в Visual Studio требует отладочных символов интерпретатора Python для анализа многочисленных внутренних структур данных. Символы отладки определяются в файлах базы данных программы (PDB). Например, для библиотеки python27.dll требуется файл символов python27.pdb, библиотека python36.dll использует файл символов python36.pdb и т. д. Каждая версия интерпретатора также предоставляет файлы символов для различных модулей.

  • В Visual Studio 2017 и более поздних версиях интерпретаторы Python 3 и Anaconda 3 автоматически устанавливают соответствующие символы, а Visual Studio автоматически находит символы.

  • В Visual Studio 2015 и более ранних версиях или для других интерпретаторов необходимо скачать символы отдельно, а затем указать Visual Studio файлам.

Когда Visual Studio обнаруживает отсутствующие обязательные символы, диалоговое окно предложит выполнить действия. Обычно при запуске сеанса отладки в смешанном режиме отображается диалоговое окно. Диалоговое окно содержит ссылку "Открыть параметры символов", которая открывает диалоговое окно "Параметры инструментов>" на вкладке "Отладочные>символы" вместе со ссылкой на эту статью документации.

Снимок экрана: запрос в Visual Studio для предоставления отсутствующих необходимых символов отладки.

Необходимые компоненты

Проверка версии интерпретатора

Символы отличаются между дополнительными сборками Python и между 32-разрядными и 64-разрядными сборками. Важно подтвердить версию и сборку Python, чтобы убедиться, что у вас есть правильные символы интерпретатора.

Чтобы проверка используемый интерпретатор Python:

  1. В Обозреватель решений разверните узел средPython в проекте.

  2. Найдите имя текущей среды (показано полужирным шрифтом).

  3. Щелкните правой кнопкой мыши имя среды и выберите команду "Открыть командную строку здесь".

    Откроется окно командной строки для расположения установки текущей среды.

  4. Запустите Python, введя следующую команду:

    python.exe
    

    Процесс выполнения отображает установленную версию Python и указывает, является ли она 32-разрядной или 64-разрядной:

    Снимок экрана: использование командной строки, открытой для расположения установки текущей среды для обнаружения версии Python.

Скачать символы

Ниже описано, как скачать необходимые символы для интерпретатора Python.

  • Для Python 3.5 и более поздних версий получите символы отладки с помощью установщика Python.

    1. Выберите пользовательскую установку, а затем нажмите кнопку "Далее".

    2. На странице "Дополнительные параметры" выберите поля для скачивания символов отладки и скачивания двоичных файлов отладки:

      Снимок экрана: выбор символов отладки и двоичных файлов в установщике Python 3.x.

    Файлы символов (PDB) находятся в корневой папке установки. Файлы символов для отдельных модулей также помещаются в папку DLL .

    Visual Studio автоматически находит эти символы. Дальнейшие шаги не требуются.

  • Для Python 3.4.x и более ранних версий символы доступны как загружаемые .zip файлы из официальных дистрибутивов или из Enthought Canopy.

    1. Скачайте необходимый файл символов.

      Внимание

      Обязательно выберите файл символов, соответствующий установленной версии Python и сборке (32-разрядная или 64-разрядная версия).

    2. Извлеките файлы символов в локальную папку в папке Python, например символы.

    3. После извлечения файлов следующим шагом является указание Visual Studio на символы.

  • Для других сторонних дистрибутивов Python, таких как ActiveState Python, обратитесь к авторам этого дистрибутива и попросите их предоставить вам символы.

    WinPython включает стандартный интерпретатор Python без изменений. Вы можете использовать символы из официального дистрибутива WinPython для соответствующего номера версии.

Указание Visual Studio на символы

Если вы скачали символы отдельно, выполните следующие действия, чтобы сделать Visual Studio осведомленными о символах.

Примечание.

Если вы установили символы с помощью установщика Python 3.5 или более поздней версии, Visual Studio автоматически находит символы. Вам не нужно выполнять действия, описанные в этом разделе.

  1. Выберите "Параметры инструментов>" и откройте вкладку "Отладочные>символы".

  2. Нажмите кнопку "Добавить " (плюс) на панели инструментов.

  3. Введите путь к папке, в которой вы извлекли скачанные символы. В этом расположении python.pdb файл, например c:\python34\Symbols, как показано на следующем рисунке.

    Снимок экрана: параметры символов отладчика смешанного режима в диалоговом окне

  4. Нажмите ОК.

Во время сеанса отладки Visual Studio может также запросить расположение исходного файла для интерпретатора Python. Если вы скачали исходные файлы, например из python.org/downloads/, вы можете указать Visual Studio скачанным файлам.

Параметры кэширования символов

Диалоговое окно "Параметры инструментов>", диалоговое окно "Отладка>символов" также содержит параметры настройки кэширования символов. Visual Studio использует функции кэширования символов для создания локального кэша символов, полученных из сетевого источника.

Эти функции не нужны для символов интерпретатора Python, так как символы уже присутствуют локально. Дополнительные сведения см. в разделе "Указание символов и исходных файлов" в отладчике Visual Studio.

Доступ к скачиваниям для официальных дистрибутивов

В следующей таблице перечислены сведения о загрузке официальных выпусков версий Python.

Python version Загрузки
3.5 и более поздние версии Установите символы с помощью установщика Python.
3.4.4 32-разрядная - 64-разрядная
3.4.3 32-разрядная - 64-разрядная
3.4.2 32-разрядная - 64-разрядная
3.4.1 32-разрядная - 64-разрядная
3.4.0 32-разрядная - 64-разрядная
3.3.5 32-разрядная - 64-разрядная
3.3.4 32-разрядная - 64-разрядная
3.3.3 32-разрядная - 64-разрядная
3.3.2 32-разрядная - 64-разрядная
3.3.1 32-разрядная - 64-разрядная
3.3.0 32-разрядная - 64-разрядная
2.7.18 32-разрядная - 64-разрядная
2.7.17 32-разрядная - 64-разрядная
2.7.16 32-разрядная - 64-разрядная
2.7.15 32-разрядная - 64-разрядная
2.7.14 32-разрядная - 64-разрядная
2.7.13 32-разрядная - 64-разрядная
2.7.12 32-разрядная - 64-разрядная
2.7.11 32-разрядная - 64-разрядная
2.7.10 32-разрядная - 64-разрядная
2.7.9 32-разрядная - 64-разрядная
2.7.8 32-разрядная - 64-разрядная
2.7.7 32-разрядная - 64-разрядная
2.7.6 32-разрядная - 64-разрядная
2.7.5 32-разрядная - 64-разрядная
2.7.4 32-разрядная - 64-разрядная
2.7.3 32-разрядная - 64-разрядная
2.7.2 32-разрядная - 64-разрядная
2.7.1 32-разрядная - 64-разрядная

Использование символов enthought Canopy

Enthought Canopy предоставляет символы отладки для двоичных файлов, начиная с версии 1.2. Эти символы автоматически устанавливаются вместе с распределением.

  • Чтобы использовать символы, вручную добавьте папку, содержащую символы, в путь к символам, как описано в point Visual Studio для символов.

    Для типичной установки canopy для каждого пользователя символы находятся в следующих папках:

    • 64-разрядная версия: %UserProfile%\AppData\Local\Enthought\Canopy\User\Scripts
    • 32-разрядная версия: %UserProfile%\AppData\Local\Enthought\Canopy32\User\Scripts

Enthought Canopy 1.1 и более ранних версий и enthought Python Distribution (EPD) не предоставляют символы интерпретатора. Эти выпуски несовместимы с отладкой в смешанном режиме.