この記事では、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 で必要なシンボルが見つからないと検出されると、アクションの実行を求めるダイアログが表示されます。 通常、混合モードデバッグ セッションを開始するとダイアログが表示されます。 ダイアログには 2 つのリンクが含まれています。そのうちの 1 つは、このドキュメント記事を開きます。
[シンボル設定] ダイアログボックスを開くと、[ツール]>[オプション] ウィンドウにおいて、[すべての設定]の[デバッグ]>[シンボル] セクションが表示されます。
[ シンボル設定を開く] ダイアログボックス で、[ ツール>オプション ] ダイアログボックスが開き、[ デバッグ>Symbols ] セクションが表示されます。
[前提条件]
- Python ワークロードをサポートしてインストールされた Visual Studio。 詳細については、「 Visual Studio での Python サポートのインストール」を参照してください。
インタープリターのバージョンを確認する
シンボルは、Python のマイナー ビルドと 32 ビットビルドと 64 ビット ビルドの間で異なります。 インタープリターに正しいシンボルがあることを確認するために、Python のバージョンとビルドを確認することが重要です。
使用中の Python インタープリターを確認するには:
ソリューション エクスプローラーで、プロジェクトの下にある [Python 環境] ノードを展開します。
現在の環境の名前を見つけます (太字で表示)。
環境名を右クリックし、[ コマンド プロンプトをここに開く] を選択します。
コマンド プロンプト ウィンドウが開き、現在の環境のインストール場所が表示されます。
次のコマンドを入力して Python を起動します。
python.exe実行プロセスでは、インストールされている Python バージョンが表示され、32 ビットか 64 ビットかを示します。
シンボルのダウンロード
次の手順では、Python インタープリターに必要なシンボルをダウンロードする方法について説明します。
Python 3.5 以降の場合は、Python インストーラーを使用してデバッグ シンボルを取得します。
[ カスタム インストール] を選択し、[ 次へ] を選択します。
[ 詳細オプション] ページで、[ デバッグ シンボルのダウンロード ] ボックスと [ デバッグ バイナリのダウンロード] ボックスを選択します。
シンボル ファイル (.pdb) は、ルート インストール フォルダーにあります。 個々のモジュールのシンボル ファイルも DLL フォルダーに配置されます。
Visual Studio では、これらのシンボルが自動的に検索されます。 これ以上の手順は必要ありません。
Python 3.4.x 以前の場合、シンボルは
.zipまたは Enthought Canopy からダウンロード可能な ファイルとして入手できます。必要なシンボル ファイルをダウンロードします。
Important
インストールされている Python バージョンとビルド (32 ビットまたは 64 ビット) に対応するシンボル ファイルを選択してください。
シンボル ファイルを Python フォルダー内のローカル フォルダー ( Symbols など) に抽出します。
ファイルを抽出した後の次の手順は、 Visual Studio をシンボルにポイントすることです。
ActiveState Python などの他のサードパーティの Python ディストリビューションについては、そのディストリビューションの作成者に連絡し、シンボルを提供するよう依頼してください。
WinPython には、変更なしで標準の Python インタープリターが組み込まれています。 対応するバージョン番号には、公式の WinPython ディストリビューションのシンボルを使用できます。
Visual Studio をシンボルにポイントする
シンボルを個別にダウンロードした場合は、次の手順に従って、Visual Studio でシンボルを認識します。
注
Python 3.5 以降のインストーラーを使用してシンボルをインストールした場合、Visual Studio によってシンボルが自動的に検索されます。 このセクションの手順を完了する必要はありません。
「ツール オプション 」ペインを開き、「すべての設定 デバッグ シンボル 検索場所」セクションを展開します。 シンボル ファイル (.pdb) の場所の一覧のツール バーで、[ + 追加] を選択します。
[ アイテムの追加 ] ダイアログで、ダウンロードしたシンボルを抽出したフォルダー パスを入力し、[保存] を選択 します。
次の図に示すように、 python.pdb ファイルがある場所 ( c:\python34\Symbols など) を指定します。
デバッグ セッション中に、Visual Studio によって Python インタープリターのソース ファイルの場所の入力が求められる場合もあります。 python.org/downloads/ など、ソース ファイルをダウンロードした場合は、ダウンロードしたファイルを Visual Studio にポイントできます。
シンボル キャッシュ オプション
> Debugging>Symbols]セクションでは、[検索の場所] サブセクションと [検索と読み込み] サブセクションでシンボル キャッシュを構成するためのその他のオプションがサポートされています。 Visual Studio では、シンボル キャッシュ機能を使用して、オンライン ソースから取得したシンボルのローカル キャッシュを作成します。
[ デバッグ>Symbols ] セクションでは、シンボル キャッシュを構成するためのその他のオプションがサポートされています。 Visual Studio では、シンボル キャッシュ機能を使用して、オンライン ソースから取得したシンボルのローカル キャッシュを作成します。
これらの機能は Python インタープリター シンボルでは必要ありません。シンボルは既にローカルに存在するためです。 詳細については、「 Visual Studio デバッガーでシンボルとソース ファイルを指定する」を参照してください。
公式配布のダウンロードにアクセスする
次の表に、公式の Python バージョン リリースのダウンロード情報を示します。
| Python バージョン | Downloads |
|---|---|
| 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 は、バージョン 1.2 以降のバイナリのデバッグ シンボルを提供します。 これらのシンボルは、ディストリビューションと共に自動的にインストールされます。
シンボルを使用するには、シンボルを含むフォルダーをシンボル パスに手動で追加します。これは、 シンボルへのポイント 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) では、インタープリターシンボルは提供されません。 これらのリリースは、混合モードデバッグと互換性がありません。