デバッガへのデバッグ情報のロードについて

実行可能イメージには、アプリケーションコードとデータに加え、関数名や変数名などのシンボリック参照も含まれています。通常、これらのシボリック参照はデバッグ情報と呼ばれます。デバッグ情報がないと、デバッガはソースレベルでデバッグすることができません。

ソースレベルでアプリケーションをデバッグするには、デバッグ情報を使用し、適度なレベルの最適化を行って、イメージファイルと共有オブジクトファイルをコンパイルする必要があります。例えば、ARM® コンパイラまたは GNU コンパイラのいずれかを使用してコンパイルする場合は、以下の各オプションを使用できます。

-g -O0

デバッグ情報のロードとファイルのロードは別の操作となるため、ファイルのロード時にデバッグ情報はロードされません。典型的なロードの順は以下のとおりです。

  1. メインのアプリケーションイメージをロードします。

  2. 共有オブジェクトがある場合は、それをロードします。

  3. メインのアプリケーションイメージのシンボルをロードします。

  4. 共有オブジェクトのシンボルをオンデマンドでロードします。

イメージと共有オブジェクトはターゲットにあらかじめロードされている場合があります。ROM デバイスや OS 認識ターゲットのイメージはその例す。対応するイメージファイルと共有オブジェクトファイル(ある場合)には、デバッグ情報を含め、ローカルホストワークステーションからアクセスできることが必要です。これにより、これらのイメージファイルと共有オブジェクトファイルからのデバッグ情報のみをロードするよう、ターゲット接続を構成できるようになります。ターゲット環境に必要な場合は、デバッグコンフィギュレーションファイルの[Files]タブにある[Load symbols from file]オプションを使用します。

ターゲットに接続した後は、[Debug Control]ビューのメニューエントリである[Load...]を使用してファイルをロードすることもできます。デバッグ情報をロードするために使用できるオプションは以下のとおりです。

[Add Symbols File]

デバッガに追加のデバッグ情報をロードします。

[Load Debug Info]

デバッガにデバッグ情報をロードします。

[Load Image and Debug Info]

アプリケーションイメージをターゲットにロードし、これと同じイメージからのデバッグ情報をデバッガにロードします。

[Load Offset]

イメージ内のすべてのアドレスに追加する 10 進数または 16 進数のオフセットを指定します。16 進数のオフセットには、接頭辞 0x を付ける必要があります。

[Enable on-demand loading]

デバッガによるデバッグ情報のロード方法を指定します。このオプションを有効にすると、ロード時間が短縮され、メモリの使用量も小さくなりすが、デバッグの速度が低下することがあります。

Figure 6. [Load additional debug information]ダイアログボックス

[Load additional debug information]ダイアログボックス

イメージまたは共有オブジェクト内のデバッグ情報には、デバッグ情報を構築するために使用されたソースのパスも含まれています。イメージまは共有オブジェクト内のアドレスで実行が停止すると、デバッガは対応するソースファイルを開こうとします。このパスが存在しないか、必要ソースファイルが見つからない場合は、ソースファイルの場所をデバッガで指定する必要があります。これを行うには、代入規則を設定して、イメージから取得したパスを、ローカルホストワークステーションからアクセスできる、必要なソースファイルのパスと関連付けられるようにします。

Show/hide関連項目

Copyright © 2010, 2011 ARM. All rights reserved.ARM DUI 0446FJ
Non-ConfidentialID111611