今天调试使用openssl的模块的时候老是报SIGILL illega,查了老半天原来是openssl检查cpu指令导致的,报错如下
Program received signal SIGILL, Illegal instruction.
0x7956a3a8 in _armv7_tick () from /home/leith/dev/mapbox-gl-native-mason/build/android/out/Debug/lib.target/libmapbox-gl.so
(gdb) bt
#0 0x7956a3a8 in _armv7_tick () from /home/leith/dev/mapbox-gl-native-mason/build/android/out/Debug/lib.target/libmapbox-gl.so
#1 0x795d1ccc in OPENSSL_cpuid_setup () from /home/leith/dev/mapbox-gl-native-mason/build/android/out/Debug/lib.target/libmapbox-gl.so
#2 0x400bd9c6 in ?? () from /home/leith/dev/android/linker
#3 0x400bda9e in ?? () from /home/leith/dev/android/linker
#4 0x400bdbf0 in ?? () from /home/leith/dev/android/linker
#5 0x400bdc6e in ?? () from /home/leith/dev/android/linker
#6 0x400bc1a6 in _start () from /home/leith/dev/android/linker
#7 0x41643c86 in dvmLoadNativeCode(char const*, Object*, char**) () from /home/leith/dev/android/system_lib/libdvm.so
#8 0x416600f4 in ?? () from /home/leith/dev/android/system_lib/libdvm.so
#9 0x41613ee8 in dvmJitToInterpNoChain () from /home/leith/dev/android/system_lib/libdvm.so
#10 0x41613ee8 in dvmJitToInterpNoChain () from /home/leith/dev/android/system_lib/libdvm.so
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
1、按F9直接忽略继续
2、在androidstudio中设置
process handle --pass true --stop false --notify true SIGILL