1

デバッグ シンボルを含むオブジェクト ファイルをコンパイルしましたが、ソースにアクセスできません。

このファイルを位置非依存に変換する方法はありますか?

「-fPIC」フラグを理解している限り、すべてのジャンプが相対的になります。このジャンプを修正してPICバイナリを作成するには、デバッグシンボルがあれば十分かどうか疑問に思っています。

そうでない場合は、この操作を実行できない理由を教えてください。

4

1 に答える 1

1

プラットフォームが異なればPICコードの実装も異なるため、この質問はコンパイラ固有というよりはむしろプラットフォームだと思います。

それにもかかわらず、単純なツールで従来のコードを位置に依存しないコードに変換できるプラットフォームを私は知りません。これは、コンパイル/コード生成時に行う必要がある決定です。おそらく、目標を達成する唯一の方法は、コードを逆アセンブルし、すべての絶対コード/データ参照を相対アドレス指定に変更することです。

簡単に言えば、いいえ、(事実上) 不可能です。

于 2015-04-20T18:18:03.847 に答える