0

実行可能ファイルに対して呼び出される C++ メソッドのリストを生成する方法はありますか? 動的ライブラリがあり、実行可能ファイルから呼び出されているメソッドの数を確認したいと考えています。C++ メソッドが dumpbin または readelf を介してエクスポートされていることがわかります。ただし、動的ライブラリを呼び出している実行可能ファイルでこれらのツールを実行すると、C メソッドと 1 つの C++ メソッドのみが一覧表示されます。C++ のインポートに何か特別なことはありますか?

4

2 に答える 2

1

プロファイリングを使用してライブラリとプログラムを構築すると、呼び出されたすべての関数のリスト (および各関数で費やされた時間) を取得できます。

手動トレース ログを追加することもできます。つまり、各関数の開始時と終了時にコンソールに書き込む呼び出しを追加します。

プロファイリングは、おそらく最も簡単で簡単な方法です。ビルド時に必要なオプションについては、ここを参照してください。たとえば、情報を抽出するために必要なプログラムのマニュアルについては、ここを参照してください。gprof

于 2013-01-04T20:58:30.573 に答える
0

プロファイリング手法を使用できます。たとえば、に-pg渡されたフラグを使用してgcc(リンク時に)プログラム全体をコンパイルしてから、を使用しますgprof。(もありますoprofile)。

ltrace実行されたライブラリ呼び出しを理解するために使用できます。

リバースエンジニアリングツールに関するこの記事に興味があるかもしれません。

于 2013-01-04T20:56:36.863 に答える