Cocos2d-x 用Eclipse进行混编,调用第三方库出错!
来源:互联网 发布:淘宝买二手电脑经历 编辑:程序博客网 时间:2024/06/07 10:10
当我们在使用Cocos2d-x 进行开发的时候,可能会使用到XCode和Eclipse进行混编开发,但是当在Android版本代码中要使用第三方的.so的时候,会出现如下错误:
04-11 21:08:59.645: E/AndroidRuntime(25490): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load XX: findLibrary returned null04-11 21:08:59.645: E/AndroidRuntime(25490): at java.lang.Runtime.loadLibrary(Runtime.java:429)04-11 21:08:59.645: E/AndroidRuntime(25490): at java.lang.System.loadLibrary(System.java:554)
很明显这个是找不到我们的放到libs/armeabi目录下面的第三方的XX.so,但是我们明明是将这个拷到libs/armeabi目录下面去了丫,仔细检查下,发现,libs/armeabi目录下面只有
gbd.setup gdbserver libgame.so这三个文件,那我们的XX.so哪去了呢?
经过查询控制台信息,发现了这么一段:
rm -f ./libs/armeabi/lib*.so ./libs/armeabi-v7a/lib*.so ./libs/mips/lib*.so ./libs/x86/lib*.sorm -f ./libs/armeabi/gdbserver ./libs/armeabi-v7a/gdbserver ./libs/mips/gdbserver ./libs/x86/gdbserverrm -f ./libs/armeabi/gdb.setup ./libs/armeabi-v7a/gdb.setup ./libs/mips/gdb.setup ./libs/x86/gdb.setup
囧!原来ndk编译的时候,将libs/armeabi目录下面所有.so都给删除了,然后将重新编译得到的.so放到这个目录下面,这咋整呢?
单独编译游戏的代码,然后将libgame.so和我的xx.so一起放到libs/armeabi目录下作为一个普通的工程使用,不参与与Xcode的混编,感觉这个方案是可行的,但是,那稍微更改一点东西,要调试、观察起来该有多么麻烦丫?
解决方案:
在我们工程的Android.mk文件中,添加如下代码即可:
include $(CLEAR_VARS)LOCAL_C_INCLUDES := (includes for XX)LOCAL_MODULE := XXLOCAL_SRC_FILES := libXX.soinclude $(PREBUILT_SHARED_LIBRARY)
这样,我们就可以继续我们的混编之路了!
参考资料:
http://stackoverflow.com/questions/10593987/android-ndk-linking
- Cocos2d-x 用Eclipse进行混编,调用第三方库出错!
- Cocos2d-x 用Eclipse进行混编,调用第三方库出错!
- cocos2d-x-3.0 用eclipse进行混编译,无法修改assets中的内容
- vs+cocos2d-x 导入第三方库 移植到android
- vs+cocos2d-x 导入第三方库 移植到android
- vs+cocos2d-x 导入第三方库 移植到android
- cocos2d-x使用第三方的so库文件
- vs+cocos2d-x 导入第三方库 移植到android
- Cocos2d-x中使用第三方so库
- Cocos2d-x中使用第三方so库
- cocos2d-x 调用iOS摄像头 c++ 和 OC混编
- cocos2d-x 加载第三方.so文件
- 用qt调用第三方库
- 用NDK调用第三方动态库
- 用qt调用第三方库
- 用NDK调用第三方库
- 用qt调用第三方库
- 调用库函数(尤其是第三方给的库)出错调试
- 对于云计算的基本认识
- struts2中用ajax标签出错。。一使用<s:head theme="ajax"/>就报错或者标签的时间控件显示不出来
- windows进程间通信方式
- 广搜--(搜索的第一道题)图像有用区域
- 使用 Advanced Installer 打包 一键安装Web应用程序
- Cocos2d-x 用Eclipse进行混编,调用第三方库出错!
- Win7系统笔记本虚拟Wi-Fi热点设置
- 为树莓派装上WiringPi
- 在Eclipse中用JDBC连接Sql Server 2005总结
- node.js Buffer模块
- 内存泄露及检测方法
- C语言运算符及其优先级汇总表口诀
- 大学生必须知道的外国典故
- java反射机制,注解,以及lib下的包