nkd:android-ndk-r16b
报错dlopen failed: “//*.so” has unexpected e_machine: 40
debug正常运行
用的是命令是
cocos run -s demo -p android -m release --ap android-21
debug正常运行和Release闪退是否为同一个机型?
可能的原因是编译的架构和实际运行的机器架构不一致,类似的讨论 http://forum.cocos.com/t/topic/37808?u=2627993092
同一个模拟器,就是网易那个mumu,其他都没改,架构只有armeabi一个
不清楚 debug 模式发生了什么,按照逻辑来讲,想要运行到模拟器上,必须添加 x86 架构的 so
几乎所有,手机处理器是 ARM 架构的,PC 是 x86 架构的。可以分两个版本手机版,和模拟器版,分别编译不同架构,也可以把两种架构的 so 打到一个包,副作用就是包体大。
相关知识,
http://www.eefocus.com/mcu-dsp/366734/r0
https://www.androidauthority.com/arm-vs-x86-key-differences-explained-568718/