gee*_*eta 6 profiling android-ndk
我正在使用android-ndk-profiler-3.1为我的项目进行NDK分析.我已经在Android.mk中进行了如下更改...
LOCAL_PATH := $(call my-dir)
-include android-ndk-profiler.mk
include $(CLEAR_VARS)
# Module name -------------------------------------------------------
LOCAL_CFLAGS += -O3
TARGET_ARCH_ABI :=armeabi
LOCAL_CFLAGS := -pg
LOCAL_STATIC_LIBRARIES := andprof
LOCAL_LDLIBS += -llog
LOCAL_MODULE := libitv
include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)
Application.mk如下......
APP_ABI := armeabi
APP_PLATFORM := android-10
Run Code Online (Sandbox Code Playgroud)
我叫monstartup("itv.so"); 函数在本机代码和moncleanup()的开头; 在stop方法中起作用.并成功创建了gmon.out文件.然后我在D:\ android\android-ndk-r6-windows\android-ndk-r6\toolchains\arm-linux-androideabi-4.4.3\prebuilt中粘贴了gmon.out\windows\bin目录.
但是当我尝试使用以下命令读取gmon.out时......
D:\android\android-ndk-r6-windows\android-ndk-r6\toolchains\arm-linux-androideab
i-4.4.3\prebuilt\windows\bin>arm-linux-androideabi-gprof D:\InternetTV_FD_Canvas
\libs\armeabi\libitv.so > out.txt
Run Code Online (Sandbox Code Playgroud)
此错误显示...
arm-linux-androideabi-gprof: file `D:\InternetTV_FD_Canvas\libs\armeabi\libitv.so'
has no symbols
Run Code Online (Sandbox Code Playgroud)
即使我做得很好,我也无法弄清楚为什么会出现这个错误.
任何人都可以帮助我.
任何帮助将不胜感激.
提前致谢.
NDK构建过程创建了2个库,一个带有符号,一个带有剥离.您在APK中安装了剥离的无符号库,但是您需要使用带有gprof的未剥离版本.如果您运行:
arm-linux-androideabi-gprof D:\InternetTV_FD_Canvas\obj\local\armeabi\libitv.so
Run Code Online (Sandbox Code Playgroud)
...那应该是正确的库.
| 归档时间: |
|
| 查看次数: |
4338 次 |
| 最近记录: |