笔者在项目开发中遇到一个莫名奇妙
coredump
问题,单独在测试程序中使用某个动态库没发现问题,将动态库整合到其他程序中则会引起coredump
。再次记录一下解决过程。
程序发生coredump
时,首先我们就会查看调用堆栈信息,如下所示截取了部分:
Device info:Unknown
Build info:Unknown
Pid:1840
Uid:0
Reason:SIGSEGV
Tid:1843 Name
#00 pc 000000000015c7a2 /system/lib/libsysparam_hal.z.so(X509_PUBKEY_get0_param+29)
#01 pc 000000000013615c /system/lib/libsysparam_hal.z.so(rsa_pss_get_param+277)
#02 pc 00000000000d9e16 /system/lib/libxquic.z.so(EVP_parse_public_key+159)
#03 pc 000000000015e0d8 /system/lib/libxquic.z.so(_ZN4bssl12ssl_set_certEPNS_4CERTENSt3__h10unique_ptrI16crypto_buffer_stNS_8internal7DeleterIS4_EEEE+213)
#04 pc 000000000015e012 /system/lib/libxquic.z.so(_ZN4bssl12ssl_set_certEPNS_4CERTENSt3__h10unique_ptrI16crypto_buffer_stNS_8internal7DeleterIS4_EEEE+15)
#05 pc 000000000016a6c6 /system/lib/libxquic.z.so(SSL_use_certificate+83)
#06 pc 00000000001612ea /system/lib/libxquic.z.so(SSL_CTX_use_certificate