Visual Studio의 Python 인터프리터에 대한 디버깅 기호를 설치합니다

이 문서에서는 Visual Studio에서 Python 인터프리터용 디버깅 기호를 다운로드하고 통합하는 단계를 제공합니다.

완전한 디버깅 환경을 제공하려면, Visual Studio의 혼합 모드 Python 디버거 는 수많은 내부 데이터 구조를 구문 분석하는 데 사용되는 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)은 루트 설치 폴더에 있습니다. 개별 모듈의 기호 파일도 DLLs 폴더에 배치됩니다.

    Visual Studio는 이러한 기호를 자동으로 찾습니다. 추가 단계는 필요하지 않습니다.

  • Python 3.4.x 이하의 경우 기호는 공식 배포판이나 Enthought Canopy에서 다운로드 가능한 .zip 파일로 제공됩니다.

    1. 필요한 기호 파일을 다운로드합니다.

      Important

      설치된 Python 버전 및 빌드(32비트 또는 64비트)에 해당하는 기호 파일을 선택해야 합니다.

    2. 기호파일처럼, Python 폴더 내에 있는 로컬 폴더에 기호 파일을 추출합니다.

    3. 파일을 추출한 후 다음 단계는 Visual Studio에서 기호를 가리키는 것입니다.

  • ActiveState Python과 같은 제3자 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 버전 다운로드
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 버전에서 시작하는 이진 파일에 대한 디버그 기호를 제공합니다. 이러한 기호는 배포와 함께 자동으로 설치됩니다.

  • 이러한 기호를 사용하려면, manually add the folder that contains the symbols to the symbol path, as described in Point Visual Studio to the symbols에서 설명한 대로 기호가 포함된 폴더를 기호 경로에 수동으로 추가합니다.

    Canopy 사용자별 일반적인 설치의 경우 기호는 다음 폴더에 있습니다.

    • 64비트 버전: %UserProfile%\AppData\Local\Enthought\Canopy\User\Scripts
    • 32비트 버전: %UserProfile%\AppData\Local\Enthought\Canopy32\User\Scripts

Enthought Canopy 1.1과 이전 버전 및 EPD(Enthought Python 배포)는 인터프리터 기호를 제공하지 않습니다. 해당 릴리스는 혼합 모드 디버깅과 호환되지 않습니다.