2009-05-19 4 views
6

例を挙げて説明してください。アプリケーションmy_app', which links against a shared object my_sobj考えるsprofの使い方は?

」としてコンパイルされた 'フラグをコンパイル-g':電子メールから

+0

を参照してください。http://stackoverflow.com/questions/1838989/gprof-how-to-generate-call-graph-for-functions-in-shared-library - リンクされている/ 4959168#49591 68 – Dan

答えて

6

herehereを発見し、私は次の注意事項を抽出しました

#set the environment variable LD_PROFILE to the name of the shared obj 
export LD_PROFILE=my_obj 
#run your application 
my_app 
#this should create a file /var/tmp/my_sobj.profile 
#now run sprof 
sprof my_sobj my_sobj.profile 

これは、共有ライブラリのプロファイル情報を提供します。my_appではなく、

+0

これはlibcのものにしか使えませんか?または、自分のコンパイル済み共有ライブラリでそれを使用できますか? – jdizzle

+1

"PLTRELがオブジェクトに見つかりません"というエラーは、自分のライブラリのプロファイルを作成しようとしたときに発生します。必要な情報を含めるには、コンパイル/リンク時に何をする必要がありますか? – jdizzle