gpt4 book ai didi

android-ndk - NDK 分析显示 ".so has no symbols"

转载 作者:行者123 更新时间:2023-12-04 15:02:26 30 4
gpt4 key购买 nike

我正在使用 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)

Application.mk如下...
APP_ABI := armeabi
APP_PLATFORM := android-10

我调用 monstartup("itv.so");函数在 native 代码和 moncleanup() 的开头; stop 方法中的函数。并成功创建了 gmon.out 文件。然后我将 gmon.out 粘贴到了
D:\android\android-ndk-r6-windows\android-ndk-r6\toolchains\arm-linux-androideabi-4.4.3\prebuilt\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

此错误显示...
arm-linux-androideabi-gprof: file `D:\InternetTV_FD_Canvas\libs\armeabi\libitv.so'
has no symbols

即使我已经做好了一切,我也无法弄清楚为什么会出现这个错误。

任何人都可以帮助我。

任何帮助将不胜感激。

提前致谢。

最佳答案

NDK 构建过程创建了 2 个库,一个有符号,一个没有。您在 APK 中安装了剥离的、无符号的库,但您需要使用带有 gprof 的未剥离的版本。如果你运行:

arm-linux-androideabi-gprof D:\InternetTV_FD_Canvas\obj\local\armeabi\libitv.so

...那应该是正确的库。

关于android-ndk - NDK 分析显示 ".so has no symbols",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9923896/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com