开发者

How to debug a SIGSEGV on a Mac?

I just starting as an Android app developer and I already have a problem with my first app :(

It's a webapp created with jQTouch and packaged with PhoneGap that is on the market for a few weeks. One customer is running it on a Motorola Milestone (Canadian equivalent of the Droid) using Android 2.1 and she says it's crash开发者_JAVA技巧ing.

I tried to reproduce it with the AVD I defined from the following website and I do get a SIGSEGV exception. http://mobile.tutsplus.com/tutorials/android/common-android-virtual-device-configurations/

I looked around and I learned that I have to run the log trace in a tool to view the reason behind the crash. I found two tools, stack.py and parse_stack.py, however they require a command to be installed: arm-eabi-addr2line and I don't have it. Searching again, I found it on GitHub: https://github.com/jsnyder/arm-eabi-toolchain/

Now, trying to install this command, it says I don't have a recent enough version of GCC. I have the latest XCode installed and I think it comes with GCC. Or else it would just say that GCC is not found.

Questions

  1. How do I get this command, arm-eabi-addr2line, installed on my Mac?
  2. Am I doing this for nothing? If stack.py tells me something is wrong in the Android SDK, what can I do to fix my app?
  3. VERY BIG THANK YOU!


You do not debug SIGSEGV crashes unless you are writing your own firmware. Those represent very low-level crashes in Android.

Package up a sample project that demonstrates the crash and upload it to http://b.android.com, along with a list of steps for how to reproduce the crash. Also include there the SIGSEGV crash dump that you are seeing in LogCat.


MacPorts is a great tool for installing anything you might need to debug this as it can install python, and newer versions of gcc for you http://www.macports.org/

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜