如何解决如何使用gdb调试libstagefright?
我的目标是什么?
为了在使用gdb的android模拟器中远程调试libstagefright的同时获得调试符号。
到目前为止我做了什么?
- 下载Android源代码
- 通过以下方式构建stagefright库:
i)午餐aosp_x86-userdebug
ii)mma(来自/ frameworks / av / media / libstagefright) - 构建完成后,将传输我要从中调试的.so文件 / out / target / product / generic_x86 / symbols / system / lib到模拟器中的/ system / lib。 我已经转移了libstagefright_soft_hevcdec.so文件(因为我想调试hevc库)
- 在设备上启动gdbserver并将其附加到mediacodec进程,在我的主机上启动gdb并建立用于调试的远程连接。
但是这没有给出调试符号,换句话说,我看不到我当前在gdb中执行的代码行。
我如何尝试使此设置正常工作?
- 添加的全局环境变量LOCAL_CFLAGS,LOCAL_CPPFLAGS在构建之前应设置为-ggdb。
- 添加TARGET_BUILD_TYPE环境变量以将其设置为在构建之前和发出午餐命令之后进行调试。
- 试图使用lldb而不是gdb调试代码,因为android构建过程使用clang,clang ++
上述任何事情都没有解决(或者我可能没有按照应该做的方式来做)。
所以在这里,我正在向我的堆栈溢出开发人员寻求帮助。
可能有用的信息
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。