- 浏览: 561123 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (338)
- 已过时文章(留念用) (39)
- Android学习笔记 (30)
- Android开发指引自译 (100)
- Android NDK文档自译 (23)
- Android设计指引自译 (2)
- xp(ペケピー)&linux(理奈、铃)酱~ (4)
- ui酱&歌词自译~ (9)
- lua酱~ (9)
- 自我反省 (1)
- 羽game计划 (1)
- XSL酱 (2)
- java酱 (3)
- 设计的领悟 (58)
- 涂鸦作品(pixiv) (1)
- ruby酱 (2)
- Objective-C编程语言自译 (2)
- Android开发月报 (6)
- objc酱 (2)
- photoshop (3)
- js酱 (6)
- cpp酱 (8)
- antlr酱 (7)
- Lua 5.1参考手册自译 (11)
- 收藏品 (3)
- 待宵草计划 (4)
- 体验版截图 (1)
最新评论
-
naruto60:
太给力了!!!!我这网打不开Intel官网,多亏楼主贴了连接, ...
使用HAXM加速的Android x86模拟器(和一些问题) -
yangyile2011:
谢谢博主,翻译得很好哦
【翻译】(4)片段 -
ggwang:
牙痛的彼岸:痹!
牙痛的彼岸 -
ggwang:
总结得很简练清晰啊,学习了!
ANTLR学习笔记一:概念理解 -
leisurelife1990:
mk sdd
用git下载Android自带app的源代码
-----------------
英文文档见android-ndk-r6b的documentation.html
属于Android Native Development Kit (NDK)的一部分
见
http://developer.android.com/sdk/ndk/index.html
翻译仅个人见解
-----------------
Android ndk-stack tool
Android ndk-stack工具
----------------------
Introduction:
介绍:
-------------
This document describes the 'ndk-stack' tool that is distributed with the Android NDK, since release r6.
本文档描述ndk-stack工具,它从发布版r6开始由Anroid NDK分发。
Overview:
概述:
---------
'ndk-stack' is a simple tool that allows you to filter stack traces as they appear in the output of 'adb logcat' and replace any address inside a shared library with the corresponding : values.
ndk-stack是一个简单工具,允许你过滤在adb logcat输出中显示的堆栈跟踪,并且把共享库内的任意地址替换成相应的冒号值(注:这里应该指<函数名><文件名>:<行号>格式,见下)
In a nutshell, it will translate something like:
简而言之,它将翻译好像这样子的东西:
I/DEBUG ( 31): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 31): Build fingerprint: 'generic/google_sdk/generic/:2.2/FRF91/43546:eng/test-keys'
I/DEBUG ( 31): pid: 351, tid: 351 %gt;%gt;%gt; /data/local/ndk-tests/crasher <<<
I/DEBUG ( 31): signal 11 (SIGSEGV), fault addr 0d9f00d8
I/DEBUG ( 31): r0 0000af88 r1 0000a008 r2 baadf00d r3 0d9f00d8
I/DEBUG ( 31): r4 00000004 r5 0000a008 r6 0000af88 r7 00013c44
I/DEBUG ( 31): r8 00000000 r9 00000000 10 00000000 fp 00000000
I/DEBUG ( 31): ip 0000959c sp be956cc8 lr 00008403 pc 0000841e cpsr 60000030
I/DEBUG ( 31): #00 pc 0000841e /data/local/ndk-tests/crasher
I/DEBUG ( 31): #01 pc 000083fe /data/local/ndk-tests/crasher
I/DEBUG ( 31): #02 pc 000083f6 /data/local/ndk-tests/crasher
I/DEBUG ( 31): #03 pc 000191ac /system/lib/libc.so
I/DEBUG ( 31): #04 pc 000083ea /data/local/ndk-tests/crasher
I/DEBUG ( 31): #05 pc 00008458 /data/local/ndk-tests/crasher
I/DEBUG ( 31): #06 pc 0000d362 /system/lib/libc.so
I/DEBUG ( 31):
Into the more readable output:
变成更可读的输出:
********** Crash dump: **********
Build fingerprint: 'generic/google_sdk/generic/:2.2/FRF91/43546:eng/test-keys'
pid: 351, tid: 351 >>> /data/local/ndk-tests/crasher <<<
signal 11 (SIGSEGV), fault addr 0d9f00d8
Stack frame #00 pc 0000841e /data/local/ndk-tests/crasher : Routine zoo in /tmp/foo/crasher/jni/zoo.c:13
Stack frame #01 pc 000083fe /data/local/ndk-tests/crasher : Routine bar in /tmp/foo/crasher/jni/bar.c:5
Stack frame #02 pc 000083f6 /data/local/ndk-tests/crasher : Routine my_comparison in /tmp/foo/crasher/jni/foo.c:9
Stack frame #03 pc 000191ac /system/lib/libc.so
Stack frame #04 pc 000083ea /data/local/ndk-tests/crasher : Routine foo in /tmp/foo/crasher/jni/foo.c:14
Stack frame #05 pc 00008458 /data/local/ndk-tests/crasher : Routine main in /tmp/foo/crasher/jni/main.c:19
Stack frame #06 pc 0000d362 /system/lib/libc.so
Usage:
使用方法:
------
To do this, you will first need a directory containing symbolic versions of your application's shared libraries. If you use the NDK build system (i.e. ndk-build), then these are always located under $PROJECT_PATH/obj/local/<ab>, where <ab> stands for your device's ABI (i.e. 'armeabi' by default).
要做到这一点,你将首先需要一个包含你的应用程序的带符号版本的动态库的目录。如果你使用NDK构建系统(即ndk-build),那么它们总是位于$PROJECT_PATH/obj/local/<ab>目录下,这里<ab>是你的设备的ABI名称(即,默认是armeabi)。
You can feed the logcat text either as direct input to the program, e.g.:
你可以把logcat的文本作为直接的输入传给ndk-stack程序,例如:
adb logcat | $NDK/ndk-stack -sym $PROJECT_PATH/obj/local/armeabi
Or you can use the -dump option to specify the logcat as an input file, e.g.:
或者你可以使用-dump开关指定logcat的输入文件,例如:
adb logcat > /tmp/foo.txt
$NDK/ndk-stack -sym $PROJECT_PATH/obj/local/armeabi -dump foo.txt
** IMPORTANT **:
** 重要事项 **:
The tool looks for the initial line containing starts in the logcat output, i.e. something that looks like:
这个工具会在logcat的输出内容中寻找包含开始内容的初始行,例如,如下所示的东西
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
When copy/pasting traces, don't forget this line from the traces, or ndk-stack won't work correctly.
当复制/粘贴追踪内容,不要忘记追踪中的这一行,否则ndk-stack将不能正确工作。
TODO:
待完成:
-----
A future version of 'ndk-stack' will try to launch 'adb logcat' and select the library path automatically. For now, you'll have to do these steps manually.
未来的ndk-stack版本将尝试启动adb logcat并且自动地选择库目录。现在,你不得不手动地做这些步骤。
As of now, ndk-stack doesn't handle libraries that don't have debug information in them. It may be useful to try to detect the nearest function entry point to a given PC address (e.g. as in the libc.so example above).
到现在为止,ndk-stack不会去处理不带调试信息的库。它可能对尝试检测离给定PC地址最近的函数入口点有用(例如,上面例子中的libc.so)
发表评论
-
【翻译】(25)ANDROID ATOMICS OPERATIONS
2012-02-21 10:22 1716----------------- 英文 ... -
【翻译】(21)Licenses
2011-11-13 21:11 922----------------- 英文文档见android ... -
【翻译】(19)Bionic Changes
2011-11-13 21:08 2480----------------- 英文文档见android ... -
【翻译】(16)Bionic Overview
2011-09-09 23:27 2231----------------- 英文文档见android ... -
【翻译】(17)SYSV IPC
2011-09-09 08:15 1578----------------- 英文文档见android ... -
【翻译】(20)System Issues
2011-09-08 18:22 1065----------------- 英文文档见andr ... -
【翻译】(24)Native Activity
2011-09-08 08:53 1498----------------- 英文文档见android ... -
【翻译】(22)CPU X86
2011-09-07 15:52 1054----------------- 英文文档见android ... -
【翻译】(15)Standalone Toolchain
2011-04-26 17:05 1532----------------- 英文文档 ... -
【翻译】(14)Stable APIs
2011-04-26 17:04 1521----------------- 英文文档见android ... -
【翻译】(13)Prebuilts
2011-04-26 17:03 1157----------------- 英文文档见android ... -
【翻译】(12)NDK GDB
2011-04-26 17:00 1429----------------- 英文文档 ... -
【翻译】(11)NDK Build
2011-04-26 16:58 1554----------------- 英文文档 ... -
【翻译】(10)Import Module
2011-04-26 16:54 1471----------------- 英文文档见android ... -
【翻译】(9)CPU Features
2011-04-26 16:52 1487----------------- 英文文档见android ... -
【翻译】(8)CPU ARM Neon
2011-04-26 16:50 1517----------------- 英文文档见android ... -
【翻译】(7)CPU Arch ABIs
2011-04-26 16:48 1225----------------- 英文文档见android ... -
【翻译】(6)Application.mk File
2011-04-26 16:46 1396----------------- 英文文档 ... -
【翻译】(5)Android.mk File
2011-04-26 16:45 1285----------------- 英文文档见android ... -
【翻译】(4)How To
2011-04-26 16:43 961----------------- 英文文档见android ...
相关推荐
ndk-stack调试.so库
使用cocos2d-x,jni,和android ndk,开发调试无从着手是吧,那就来使用ndk-stack吧,让你轻松自如的在eclipse下,android下调试c/c++吧。嘻嘻。好东西要分享哦。
CC2530NDK实验1——Z-STACK SensorDemo实验
Z-STACK实验讲解分析 Z-STACK SensorDemo 实验
android-ndk-tracktrack-analyzer .py
一个用于分析Android本地代码crash的工具 ...然后执行 ndk-stack -sym 符号所在的目录 -dump crash_log.txt; 例如ndk-stack -sym out/target/product/mt5520_cn_android_64/symbols -dump crash_log.txt
参考 http://blog.csdn.net/koffuxu/article/details/37959071
NDCrash NDCrash是用于Android NDK应用程序的功能强大的崩溃报告库。 作者的灵感来自...ndk-stack兼容的人类可读报告格式。 可以轻松使用此工具访问行号。 支持两种崩溃处理模式:进程内和进程外。 支持5种不同
TI实时操作系统相关官方文档,包含TIRTOS、SYSBIOS、NDK等
自己写的查找Dump adroid crash堆栈函数的源代码 ...cd C:\androidNDK\build\prebuilt\windows\arm-eabi-4.2.1\bin arm-eabi-objdump -d XXX.so >lib.txt 把crash 代码放入input.txt 运行sofind 生成output.txt
Virtual Protocol Interconnect (VPI): Running Ethernet...NDK with SMB-Direct NDv1 and v2 API support in user space Support Teaming and High-Availability Support a variety of Windows Server and Client OS )
A demo of how you can process photos leveraging the ndk. Blur The Stack Blur Algorithm by Mario Klingemann is used to perform blur operations. License Apache License, Version 2.0 ...
Bugsnag错误监控和Android异常报告器 获取全面的以快速调试错误。 Bugsnag的库可自动检测Android应用程序中的崩溃,收集诊断信息并立即通知您的开发团队,从而帮助您尽快理解和解决问题。 产品特点 ...
Widget Catalog: StackView Widget Catalog: TabHost and TabWidget Widget Catalog: TimePicker Widget Catalog: ViewFlipper Device Catalog: Chrome and Chrome OS Device Catalog: BlackBerry Device Catalog: ...
Widget Catalog: StackView Widget Catalog: TabHost and TabWidget Widget Catalog: TimePicker Widget Catalog: ViewFlipper Chrome and Chrome OS Device Catalog: Kindle Fire Device Catalog: BlackBerry ...