unidbg死活报错: BackendException: unicorn.UnicornException: Invalid instruction (UC_ERR_INSN_INVALID)

com.github.unidbg.arm.backend.BackendException: unicorn.UnicornException: Invalid instruction (UC_ERR_INSN_INVALID)
	at com.github.unidbg.arm.backend.UnicornBackend.emu_start(UnicornBackend.java:378)
	at com.github.unidbg.AbstractEmulator.emulate(AbstractEmulator.java:380)
	at com.github.unidbg.thread.Function32.run(Function32.java:39)
	at com.github.unidbg.thread.MainTask.dispatch(MainTask.java:19)
	at com.github.unidbg.thread.UniThreadDispatcher.run(UniThreadDispatcher.java:172)
	at com.github.unidbg.thread.UniThreadDispatcher.runMainForResult(UniThreadDispatcher.java:96)
	at com.github.unidbg.AbstractEmulator.runMainForResult(AbstractEmulator.java:340)
	at com.github.unidbg.arm.AbstractARMEmulator.eFunc(AbstractARMEmulator.java:229)
	at com.github.unidbg.linux.AbsoluteInitFunction.call(AbsoluteInitFunction.java:55)
	at com.github.unidbg.linux.LinuxModule.callInitFunction(LinuxModule.java:141)
	at com.github.unidbg.linux.AndroidElfLoader.loadInternal(AndroidElfLoader.java:180)
	at com.github.unidbg.linux.AndroidElfLoader.loadInternal(AndroidElfLoader.java:62)
	at com.github.unidbg.spi.AbstractLoader.load(AbstractLoader.java:233)
	at com.github.unidbg.linux.android.dvm.BaseVM.loadLibrary(BaseVM.java:236)
Caused by: unicorn.UnicornException: Invalid instruction (UC_ERR_INSN_INVALID)
	at unicorn.Unicorn.emu_start(Native Method)
	at com.github.unidbg.arm.backend.UnicornBackend.emu_start(UnicornBackend.java:376)
	... 179 more
debugger break at: 0x4004450c @ Function32 address=0x400404d0, arguments=[]
>>> r0=0x0 r1=0x0 r2=0xbffff6a8 r3=0x1 r4=0x4017ddf0 r5=0xbffff700 r6=0x1 r7=0x4017defc r8=0xfffffb27 sb=0x10 sl=0x40177e4c fp=0x0 ip=0x4017defc
>>> SP=0xbffff6e0 LR=RX@0x400406b0[libmmcrypto.so]0x406b0 PC=RX@0x4004450c[libmmcrypto.so]0x4450c cpsr: N=0, Z=1, C=1, V=0, T=0, mode=0b10000
>>> d0=0x0(0.0) d1=0x3220302034203720(3.002229861217884E-67) d2=0x3436333832203236(3.5366761868402984E-57) d3=0x3120323938343135(4.583358096989596E-72) d4=0x2030203020302030(1.2027122125173386E-153) d5=0x2030203020302030(1.2027122125173386E-153) d6=0x2030203020302030(1.2027122125173386E-153) d7=0x2030203020302030(1.2027122125173386E-153)
>>> d8=0x0(0.0) d9=0x0(0.0) d10=0x0(0.0) d11=0x0(0.0) d12=0x0(0.0) d13=0x0(0.0) d14=0x0(0.0) d15=0x0(0.0)
[main] DEBUG org.scijava.nativelib.NativeLibraryUtil - architecture is WINDOWS_64 os.name is windows 10
[main] DEBUG org.scijava.nativelib.NativeLibraryUtil - platform specific path is natives/windows_64/
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - mappedLib is demumble.dll
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - Couldn't find resource natives/windows_64/demumble.dll
[main] DEBUG org.scijava.nativelib.NativeLibraryUtil - platform specific path is windows_64/
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - mappedLib is demumble.dll
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - Couldn't find resource windows_64/demumble.dll
[main] DEBUG org.scijava.nativelib.NativeLibraryUtil - platform specific path is META-INF/lib/windows_64/
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - mappedLib is demumble.dll
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - Couldn't find resource META-INF/lib/windows_64/demumble.dll
[main] DEBUG org.scijava.nativelib.NativeLibraryUtil - architecture is WINDOWS_64 os.name is windows 10
[main] DEBUG org.scijava.nativelib.NativeLibraryUtil - platform specific path is natives/windows_64/
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - mappedLib is disassembler.dll
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - Couldn't find resource natives/windows_64/disassembler.dll
[main] DEBUG org.scijava.nativelib.NativeLibraryUtil - platform specific path is windows_64/
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - mappedLib is disassembler.dll
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - Couldn't find resource windows_64/disassembler.dll
[main] DEBUG org.scijava.nativelib.NativeLibraryUtil - platform specific path is META-INF/lib/windows_64/
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - mappedLib is disassembler.dll
[main] DEBUG org.scijava.nativelib.BaseJniExtractor - Couldn't find resource META-INF/lib/windows_64/disassembler.dll

最初还以为是识别不到动态链接库,试图将so文件添加到classpath,浪费很多时间。

后来通过反复排查,最终发现是jcl-over-slf4j依赖冲突导致。

将罪魁包"org.slf4j:jcl-over-slf4j"exclusion解决

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值