ndk-stack 学习使用

原创 2014年04月04日 17:06:46

最近在mac上编译android 版本,各种崩溃让人蛋疼,网上学习了下ndk-stack使用方法。

自己备忘下:

1.运行终端。 跳转到你android sdk 目录 因为你的adb 在里面。

如 cd /Users/name/Android/adt-bundle-mac-x86_64-20131030/sdk/platform-tools 

2、找了路径正确继续下一步,./adb logcat | 你android ndk-stack所在的路径 -sym /你安卓工程.so文件所在的目录

./adb logcat | /Users/name/Android/android-ndk-r8e/ndk-stack -sym /Users/name/test/proj.android/obj/local/armeabi

3、正确配置后会在终端出现

- waiting for device -

4、AndroidManifest.xml 设置 Debuggable 为true  在Application 切页中

5、另外启动一个终端 编译android工程

6、ADT连接设备运行你的工程就行了,出现崩溃的话会在你前面配置的终端里面打印出来。

********** Crash dump: **********

Build fingerprint: 'Xiaomi/aries/aries:4.1.1/JRO03L/JLB29.0:user/release-keys'

pid: 6546, tid: 6575, name: Thread-9654  >>> com.cocos2dx.SanGo <<<

signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr deadbaad

Stack frame #00  pc 00013a78  /system/lib/libc.so

Stack frame #01  pc 00015e55  /system/lib/libc.so (dlfree+1628)

Stack frame #02  pc 00017003  /system/lib/libc.so (free+10)

Stack frame #03  pc 004965e8  /data/data/com.cocos2dx.test/lib/libgame.so (cocos2d::CCImage::~CCImage()+88): Routine __static_initialization_and_destruction_0 in /Users/name/Sango_Android/test/libs/cocos2dx/platform/android/CCApplication.cpp:127

Stack frame #04  pc 0049664c  /data/data/com.cocos2dx.teset/lib/libgame.so (cocos2d::CCImage::~CCImage()+20): Routine CCLog in /Users/name/test/libs/cocos2dx/platform/android/CCCommon.cpp:36

重要的就是 cpp 行号。为我们定位崩溃地点很有作用,再结合程序的打印输出位置,就能很快定位问题了。


 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

高通平台Linux kernel死机解题心得

1、前言 1.1 目的 能够借助相关调试工具,使用一般分析手段分析、定位解决项目过程中遇到的死机类系统稳定性问题,提升工作效率 持续积累,拓宽知识深度和广度 1.2 死机? 指系统发生致命性异...

ndk-stack使用

1. so库要改成debug模式,在application.apk下加入APP_OPTIM := debug,然后重新编译so库 2 cmd下进入ndk的安装目录,必须进入 3. 执行命令 ad...

NDK Stack

python hy.panic.py error.txt ----------------- 英文文档见android-ndk-r6b的documentation.html 属于Andr...

解决COCOSTUDIO 1.3.0.1各种痛恨的控件Reader 的内存泄露

最近被COCOSTUDIO各种折腾。。。我水平也有限啊。。 genz

ndk-stack的使用

问题及解决方法 jni开发过程中native崩溃log样式如下 F/libc (12115): Fatal signal 11 (SIGSEGV) at 0x37413144 (code=1),...

Android NDK开发Crash错误定位

在Android开发中,程序Crash分三种情况:未捕获的异常、ANR(Application Not Responding)和闪退(NDK引发错误)。其中未捕获的异常根据logcat打印的堆栈信息很...

android使用ndk-stack调试JNI部分的C/C++代码

法一:使用ndk-stack输出调用堆栈 我这里的ndk-stack位置为:/home/hwh/Android_Project/Environment/android-ndk-r8e 'ndk...
  • oldmtn
  • oldmtn
  • 2013-05-06 11:50
  • 14019

深入 kernel panic 流程

一、前言  我们在项目开发过程中,很多时候会出现由于某种原因经常会导致手机系统死机重启的情况(重启分Android重启跟kernel重启,而我们这里只讨论kernel重启也就是 kernel pa...

【玩转cocos2d-x之三十八】如何使用NDK-STACK tool来恢复Cocos2d-x安卓错误堆栈信息

很多童鞋在纠结在Cocos2d-x中安卓项目如何调试JNI部分的C++代码,在吃完2个茶叶蛋后我决定放大招。。。 本文翻译自:http://www.cocos2d-x.org/forums/6/to...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)