Android JNI之——UnsatisfiedLinkError errordlopen failed: cannot locate symbol "rand"

来源:互联网 发布:c语言与数据库 编辑:程序博客网 时间:2024/05/21 09:34
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46593083

E/dalvikvm(19498): dlopen("/data/app-lib/com.mystylinglounge.salonluatest-2/libcocos2dlua.so") failed: dlopen failed: cannot locate symbol "rand" referenced by "libcocos2dlua.so"...
V/Trevor  (19498): UnsatisfiedLinkError errordlopen failed: cannot locate symbol "rand" referenced by "libcocos2dlua.so"...

https://code.google.com/p/android-developer-preview/issues/detail?id=168

gz-rios-mac05:proj.android mac05$ ndk-build -v
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for x86_64-apple-darwin

原来是对机器的位搞错了,,我的android 机器是32 位,但 应该下32 位的ndk

https://developer.android.com/tools/sdk/ndk/index.html

lAndroid NDK, Revision 10(July 2014)

Important changes:
  • Added 3 new ABIs, all 64-bit: arm64-v8a, x86_64, mips64. Note that:
    • GCC 4.9 is the default compiler for 64-bit ABIs. Clang is currently version 3.4.NDK_TOOLCHAIN_VERSION=clang may not work for arm64-v8a and mips64.
    • Android-L is the first level with 64-bit support. Note that this APIlevel is a temporary one, and only for L-preview. An actual API level number will replace it atL-release.
    • This release includes now includes all32 and all64settings forAPP_ABI.
      • APP_ABI=all32 is equivalent toAPP_ABI=armeabi,armeabi-v7a,x86,mips.
      • APP_ABI=all64 is equivalent toAPP_ABI=arm64-v8a,x86_64,mips64.
      • APP_ABI=all selects all ABIs.
虽然上面说的APP_ABI=ALL32 但其实指的是32bit 的NDK 包下午的编译选项,并不是说64bit NDK package 可以编译出32bit 的armeabi lib
0 0
原创粉丝点击