2016-12-01 45 views
9

如何在使用最新的Android Studio工具时让lldb查看预置本机库的符号?Android - 使用lldb调试预置本机库

我正在使用Android Studio 2.2.2开发Android应用程序。我的应用程序有一个本地组件,也取决于我的本地组件链接到的预构建本机库。当我用调试器闯入一些本机代码时,调试器为我的本地代码提供了符号,但不是用符号构建的预建库。我在调试预构建本机库(https://developer.android.com/ndk/guides/prebuilts.html#dp)时发现的文档似乎已过时,因为它指的是Android.mk和ndk-gdb,而不是build.gradle,CMakeLists.txt和lldb,这是我正在使用。

对于熟悉lldb的人(这并不是说我熟悉它),这里有一些信息。我认为这反映了这样一个事实,即调试器正在查看我的本机代码的非符号剥离版本,该代码位于存储在我的机器上的libnative-lib.so中,但它正在查看预构建的符号剥离版本库,libaws-cpp-sdk-vitalservices.so,它存储在Android设备上:

(lldb) image list 
... 
[107] B8FC838B-0000-0000-0000-000000000000   /Users/christophersimmons/.lldb/module_cache/remote-android/.cache/B8FC838B-0000-0000-0000-000000000000/libaws-cpp-sdk-vitalservices.so 
[108] A7AD2397-02E5-5AE9-0192-F2353B51C362-C40832C9   /Users/christophersimmons/Documents/repos/DoclilyAndroid/app/build/intermediates/cmake/debug/obj/x86/libnative-lib.so 
+0

你想通了吗?我遇到了同样的问题。 –

回答