问题描述
我正在将32位NDK项目迁移到64位。 我们在项目中调用了许多库: 像-libssl.so,libcrypto.so,libc.so,liblog.so,libcrashlytics.so
在将要通过fopen读取内核进程的项目中,但是由于某种原因,我收到致命信号错误和Android logcat,如下所示:
A / libc:致命信号11(SIGSEGV),代码1(SEGV_MAPERR),故障加法器 TID 12462(eradocs.android)中的0xafef03c4,pid 12462(eradocs.android)
======================== 在堆栈跟踪中找到的崩溃转储下方
#00 0x00000000afef03c4-此内存地址与上述致命信号错误匹配。
#06 0x000000000013f350 /apex/com.android.runtime/lib64/libart.so(art_quick_generic_jni_trampoline + 144)(BuildId: d700c52998d7d76cb39e2001d670e654)
#07 0x00000000001365b8 /apex/com.android.runtime/lib64/libart.so(art_quick_invoke_static_stub + 568)(BuildId: d700c52998d7d76cb39e2001d670e654)
#08 0x000000000014500c /apex/com.android.runtime/lib64/libart.so(art :: ArtMethod :: Invoke(art :: Thread *,unsigned int *,unsigned int, art :: JValue *,char const *)+ 276)(BuildId: d700c52998d7d76cb39e2001d670e654)
#09 0x00000000002e2928 /apex/com.android.runtime/lib64/libart.so(art :: interpreter :: ArtInterpreterToCompiledCodeBridge(art :: Thread *, art :: ArtMethod *,art :: ShadowFrame *,unsigned short,art :: JValue *)+ 384) (BuildId:d700c52998d7d76cb39e2001d670e654)
#10 0x00000000002ddb88 /apex/com.android.runtime/lib64/libart.so(布尔型艺术::解释器:: DoCall
(art :: ArtMethod *,art :: Thread *, art :: ShadowFrame&,art :: Instruction const *,unsigned short, art :: JValue *)+ 892)(BuildId:d700c52998d7d76cb39e2001d670e654) #11 0x00000000005a28ac /apex/com.android.runtime/lib64/libart.so(MterpInvokeStatic + 372)(BuildId:d700c52998d7d76cb39e2001d670e654)
#12 0x0000000000130994 /apex/com.android.runtime/lib64/libart.so(mterp_op_invoke_static + 20)(BuildId: d700c52998d7d76cb39e2001d670e654)
#14 0x00000000002b3c3c /apex/com.android.runtime/lib64/libart.so
有人可以帮助我进行此堆栈跟踪吗?有没有办法找到这个的根本原因?