【发布时间】:2016-01-29 17:21:39
【问题描述】:
前段时间,我为 C libspeex 音频编解码器开发了一个 jni 包装器。 最近我在使用 ndk r10e 编译和运行它时遇到了一些问题,因为音频编码功能在运行时崩溃了。
最后我发现当我用
编译时NDK_TOOLCHAIN_VERSION:=4.8
本机代码在使用时运行
NDK_TOOLCHAIN_VERSION:=clang
它崩溃了。我想知道这两个工具链之间的区别。
崩溃的logcat:
11-02 14:26:33.642 1908-1908/com.ermes.intau D/dalvikvm: GC_FOR_ALLOC freed 1248K, 20% free 34140K/42456K, paused 102ms, total 102ms
11-02 14:26:33.642 1908-2514/com.ermes.intau A/libc: Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 2514 (Thread-103909)
11-02 14:26:33.742 1908-1908/com.ermes.intau D/dalvikvm: GC_FOR_ALLOC freed 6K, 18% free 34883K/42456K, paused 89ms, total 89ms
【问题讨论】:
-
能否请您发布崩溃堆栈?
-
就这些了吗?应该有来自系统进程的带有 DEBUG 标记的长堆栈跟踪
标签: android android-ndk java-native-interface toolchain