android ndk中使用gprof

因为bionic的限制,gcc开启-pg参数后会提示找不到__gnu_mcount_nc。

搜索之后发现richard.quirk已经做好了gprof的支持库:
http://code.google.com/p/android-ndk-profiler/


简单翻译下使用方法:

将压缩包解压,然后在Android.mk中添加
LOCAL_SRC_FILES := $(your_path)/libandprof.a

在初始化时调用:
monstartup("your_lib.so");

退出时调用:
moncleanup();

修改AndroidManifest.xml,添加:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

执行退出函数后会保存在/sdcard/gmon.out,查看结果时使用:
git pull /sdcard/gmon.out .
arm-linux-androideabi-gprof your_lib.so

 

注:有符号表的.so位于/obj/local下


Origin: http://blog.sina.com.cn/s/blog_403638c60100tfef.html

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页