6

私はかなり多くの検索を行ってきましたが、ELF 実行可能ファイルから関数プロトタイプ、少なくとも引数の型と戻り値の型を抽出する方法が見つかりませんでした。GNU BinUtils またはその他の方法を使用します。

readelf、nm、および objdump でさまざまなオプションを使用してみました。それらにはシンボルと関数名がリストされていますが、関数の引数の型と戻り値の型を知るにはどうすればよいですか?

私はそれを行う方法があるべきだと直感しています。誰かがこれに光を当てることができますか?

ホスト: Windows 7

ターゲット: PowerPC アーキテクチャの elf

4

1 に答える 1

12

readelf -wiバイナリがデバッグ情報を使用してビルドされていると仮定すると、ダンプするDWARF デバッグ形式を読み取ることで、関数の型、引数の型などを取得できます。

バイナリが IBM のコンパイラによって生成されたものである場合、代わりに (古い) STABS デバッグ情報が含まれている可能性がありますobjdump -g

バイナリにデバッグ情報がない場合は、探している情報を取得できません。そこにないだけです。

于 2013-03-22T20:09:17.337 に答える