如何象征AddressSanitizer堆栈跟踪?

时间:2018-08-05 17:36:20

标签: android memory-leaks android-ndk android-debug address-sanitizer

借助this有用的文章,我能够将Address Sanitizer集成到我的android应用程序中。 我在模拟器上使用x86调试版本来查找内存问题,我的C ++代码 我的x86调试版本正常运行,并且在模拟器上安装了功能性wrap.sh。一旦安装了APK,一旦AddressSanitizer发现了第一个内存问题,该应用程序就会运行,并且该应用程序将崩溃,并且我可以通过adb logcat看到崩溃的回溯。 AddressSanitizer产生的堆栈跟踪没有符号化,因此我不知道它为我发现了什么问题。 我在符号化堆栈框架时面临问题。 我正在使用NDK版本17.1.4828580

a)如何符号化堆栈跟踪?

b)无论如何,AddressSanitizer在找到第一个问题后不会崩溃,而是继续查找并报告下一个问题吗?

c)但是,根据文档,AddressSanitizer会报告内存问题,例如溢出,返回后使用等,但它不会在本机代码中报告内存泄漏。Android不支持ASAN_OPTIONS = detect_leaks = 1。有没有可用的工具可以指出本机代码中的内存泄漏?

0 个答案:

没有答案