Android ndk genymotion ARM翻译:“…/lib/arm/libndk.so“;有意外的e_机器:40
这里是,当我尝试android jni示例时,我得到Android ndk genymotion ARM翻译:“…/lib/arm/libndk.so“;有意外的e_机器:40,android-ndk,android-emulator,Android Ndk,Android Emulator,这里是,当我尝试android jni示例时,我得到有意外的e_机器,完整步骤如下: $/media/roroco/disk750/adr/android-ndk-r10e/ndk buil 在project中,创建新的android应用程序,并运行它 并获得以下输出 Process: com.mamlambo.sample.ndk1, PID: 5560 java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/co
有意外的e_机器
,完整步骤如下:
$/media/roroco/disk750/adr/android-ndk-r10e/ndk buil
- 在project中,创建新的android应用程序,并运行它
Process: com.mamlambo.sample.ndk1, PID: 5560
java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/com.mamlambo.sample.ndk1-1/lib/arm/libndk1.so" has unexpected e_machine: 40
at java.lang.Runtime.loadLibrary(Runtime.java:371)
at java.lang.System.loadLibrary(System.java:988)
at com.mamlambo.sample.ndk1.AndroidNDK1SampleActivity.<clinit>(AndroidNDK1SampleActivity.java:35)
at java.lang.reflect.Constructor.newInstance(Native Method)
at java.lang.Class.newInstance(Class.java:1606)
Process:com.mamlambo.sample.ndk1,PID:5560
java.lang.UnsatisfiedLinkError:dlopen失败:“/data/app/com.mamlambo.sample.ndk1-1/lib/arm/libndk1.so”具有意外的e_计算机:40
位于java.lang.Runtime.loadLibrary(Runtime.java:371)
位于java.lang.System.loadLibrary(System.java:988)
位于com.mamlabo.sample.ndk1.AndroidNDK1SampleActivity。(AndroidNDK1SampleActivity.java:35)
位于java.lang.reflect.Constructor.newInstance(本机方法)
位于java.lang.Class.newInstance(Class.java:1606)
我找到了解决方案,原因是我使用了genymotion并安装了genymotion armtranslation,armtranslation有bug,所以我应该构建c到x86设备,步骤如下:
- 创建jni/Application.mk,编写“APP_ABI:=x86 armeabi armeabi-v7a”
- ndk构建
- 在genymotion中调试应用程序
java.lang.unsatifiedlinkerror:dlopen失败:“/data/app//lib/arm/libmonodroid.so”有意外的e_机器:40