一般に、実稼働環境で実行されるアプリケーションは、デバッグ情報なしでビルドおよびデプロイされます。
ただし、デバッグ情報のないアプリケーションからデバッガーに提供される情報および機能は、デバッグ情報付きでビルドされた同じアプリケーションに比べて大幅に少なくなります。
アプリケーションがデバッグ情報なしでデプロイされた場合でも、デバッグ能力を確保することができます。
この方法は、アプリケーション最適化とデバッグ能力との間の妥協点を提供するために、-02 最適化オプションおよび拡張 -g5 または -g8 オプション・レベルと併用することができます。
実動デバッグ用にアプリケーションを使用可能にするには、以下のようにします。
- アプリケーションを -g (または拡張 -g5 と -g8 の各オプション・レベルのいずれか) を使用してコンパイルします。
- アプリケーション・ソース・ツリーのコピーを作成します。
- アプリケーション・バイナリーを含む最上位ディレクトリーのコピーを作成します。
ディレクトリーの名前は、アプリケーション・バイナリーのこのコピーに、デバッガーで必要なデバッグ情報が含まれていることを明確に示す必要があります。
- オリジナルのアプリケーション・バイナリーに対して strip ツールを実行します。
これにより、アプリケーション・バイナリーからデバッグ情報が除去され、実動版アプリケーションが作成されます。
この版のアプリケーションは、実動サーバーにデプロイ可能であり、またユーザーに配布可能です。
- アプリケーション・ソース・ツリー (ステップ 2 から) およびデバッグ可能アプリケーション・バイナリー (ステップ 3 から) の両方を安全な場所に保存します。
これらは、実動版アプリケーションのデバッグに必要なデバッグ情報を提供するために使用できます。
実動版アプリケーションをデバッグするには、以下のようにします。
- デバッグ可能バイナリーを実動マシンにコピーします。
- 実動版アプリケーションを UI から起動する場合は、そのアプリケーションに対してを選択して、「リモート側でコンパイルしたアプリケーション」起動構成を作成します。
実行中の実動版アプリケーションに接続する場合は、を選択して、「リモート・プロセス」起動構成を作成します。
- 起動構成ダイアログで、「拡張」タブにある「実動デバッグを使用可能にする」チェック・ボックスをクリックします。
デバッグ可能アプリケーション・バイナリーへのパスを「デバッグ可能バイナリー・パス」リストに入力します。
このパスで、実動版に対応するデバッグ可能アプリケーション・バイナリーが繰り返し検索されます。
- アプリケーション・ソース・ツリーをデバッガーのソース・ルックアップ・パスに追加します。
ソース・ルックアップ・パスはアプリケーション起動構成の「ソース」タブで変更できます。
ソース・ルックアップ・パスには、「デバッグ」ビューでアプリケーションを右クリックし、 「ソース・ルックアップの編集...」を選択することでアクセスできます。
デバッガーは、対応するデバッグ可能バイナリーを見つけると、そのデバッグ可能バイナリーを実動版に関連付けます。
「モジュール」ビューにあるアイコンは、正常に関連付けされたこれらのモジュールを示しています。
「プロパティー」ビューを開いて「モジュール」ビューにあるモジュールをクリックすると、関連付けに関する追加情報が表示されます。
デバッグ可能バイナリーは、「モジュール」ビュー内のモジュールを右クリックして「デバッグ可能バイナリーの関連付け...」を選択して、個々のモジュールに関連付けることもできます。
デバッグ可能バイナリーの完全修飾ファイル名を入力してください。