CDB を使用したリモートデバッグ
リモートマシンまたはコンテナが Windows を実行しており、アプリケーションが MSVC を使用してコンパイルされている場合は、CDB を使用してリモートデバッグを行うことができます。
アプリケーションのリモート実行がすでに設定されており、「Run 」ボタン(またはCtrl+R)を選択することで動作する場合は、「Debug 」ボタン(またはF5)を選択することでリモートデバッグを開始できます。
リモートモードでは、ローカルの CDB プロセスが、リモートマシン上で実行されている CDB プロセスと通信します。このプロセスは、サーバーモードに切り替えるための特別なコマンドラインオプションを指定して起動されます。リモートの CDB プロセスは、Qt Creator に同梱されている「Qt Creator 」CDB 拡張ライブラリをロードする必要があります:
- リモートマシンに「Debugging Tools for Windows」をインストールします。インストールフォルダには、CDB コマンドライン実行ファイル(
cdb.exe)が含まれています。 - Qt Creator のCDB拡張ライブラリと、Qtのインストールディレクトリにある依存関係を、リモートマシンの新しいフォルダにコピーします(使用する「Debugging Tools for Windows」のバージョンに応じて、32ビット版または64ビット版を選択してください):
\lib\qtcreatorcdbext32(32 ビット)\lib\qtcreatorcdbext64(64ビット)
- 環境変数 `_NT_DEBUGGER_EXTENSION_PATH` を、そのフォルダを指すように設定します。
- 通信プロトコルとして TCP/IP を使用するには、次のようにリモート CDB を起動します:
cdb.exe -server tcp:port=1234 <executable>
- Qt Creator を実行しているローカルマシンで、[Debug ] > [Start Debugging ] > [Attach to Remote CDB Session] の順に選択します。
- 「Connection 」フィールドに接続パラメータを入力します。たとえば、TCP/IPの場合は次のようになります:
Server:Port
他のプロトコルを選択した場合は、以下の代替形式のいずれかを指定してください:
tcp:server=Server,port=Port[,password=Password][,ipversion=6] tcp:clicon=Server,port=Port[,password=Password][,ipversion=6] npipe:server=Server,pipe=PipeName[,password=Password] com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password] spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password] ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password] ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password]
- デバッグを開始するには、[OK ] を選択します。
CDB プロセスの管理設定を指定するには、[Preferences ] > [Debugger ] > [CDB] の順に移動します。
「手順: デバッグ」、「CDB」、「デバッグ」、「デバッガ」も参照してください 。
Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.