適用範囲:DS-5
現象
イメージのデバッグ情報をロードした際に"WARNING(LUX47): The image does not match the target"が発生します。
原因
イメージからデバッグ情報をロードする際、デバッガは同様にターゲットにロードされているものとロードされるイメージが合致するかチェックします。
もしイメージが合致しない場合このワーニングが発生します。このワーニングを無視してしまうと、ステップ実行のようなソースレベルデバッグ操作が正常に動作しない、ブレークポイントが間違った場所にセットされる、変数の参照が間違った値を返すといった結果を引き起こします。
2つのイメージを比較する際、非常に時間がかかる可能性があるのでデバッガは中身全てを比較しません。代わりにデバッガはイメージの最初と最後にあるいくつかのコード命令を比較します。
イメージの最初と最後にある命令を比較することはイメージに命令が追加されたり削除されたことを検出するのには充分ですが、間にある命令が変更されているもののトータルの命令数が同じである場合は検出することができない場合があります。この比較はデバッグ情報を含まないためデバッガ内のイメージがストリップされていないもので、ターゲット上のイメージがストリップされたものが使われている場合には、ストリップされたものがストリップ前のイメージから生成されたものであれば成功するべきです。
解決策
ターゲット上で動作しているものと、デバッガにロードしようとしているイメージが一致することを確認してください。デバッガにロードしようとしているイメージが、同じイメージからデバッグ情報をストリップしたものがターゲット上のイメージの場合はロード可能です。