Bullet(Cocos2dx)之交叉编译Android,集成到cocos2dx3.x
Bullet(Cocos2dx)之交叉编译Android,集成到cocos2dx3.x
分类: cocos2d-x Android 物理引擎
2014-12-30 20:17
86人阅读
评论(0)
收藏
举报
cocos2dx
bullet
首先将src文件夹复制到jni文件夹,没有可以新建一个 新建两个文件Android.mk,Application.mk Application.mk内容如下: APP_ABI:=armeabiarmeabi-v7ax86 APP_PLATFORM:=android-8 APP_STL:=stlport_static Android.mk内容如下: LOCAL_PATH:=$(callmy-dir) include$(CLEAR_VARS) LOCAL_MODULE :=bullet_static(可随便起) LOCAL_MODULE_FILENAME:=libbullet(可随便起) LOCAL_C_INCLUDES:=src/(头文件位置) (源文件,要列出所有用到的,这里用到BulletSoftBodyBulletDynamics BulletCollisionsLinearMath)
最后还要加上一句,表示生成静态库如果将STATIC该文SHARED则生成动态库 include$(BUILD_STATIC_LIBRARY) 然后进入命令行 进入jni所在目录 ndk-build 等待编译完成
将三个目录下的libbullet.a分别复制到cocos2dx的安装目录下的 安装目录Cocosframeworkscocos2d-xprebuiltandroid相应文件下 进入Cocosframeworkscocos2d-xexternal 新建文件夹Bullet,在Bullet下新建prebuild-mk 将Box2Dprebuild-mk下的Android.mk复制到Bullet/prebuild-mk 修改如下3行 LOCAL_MODULE:=bullet_static LOCAL_MODULE_FILENAME:=libbullet LOCAL_SRC_FILES:=../../../prebuilt/android/$(TARGET_ARCH_ABI)/libbullet.a
复制头文件将bullet3的src的所有文件复制到新建的Bullet文件下
删除不是.h的所有文件 下一步任务繁重, 将所有用到BulletCollisionBulletDynamicsBulletSoftBodyLinearMath目录下的include都加上Bullet/,可以使用Notepad++在Bullet目录搜索Bullet,并替换为Bullet/Bullet,LinearMath并替换为Bullet/LinearMath 进入Cocosframeworkscocos2d-xcocosprebuilt-mk 在Android.mk 在LOCAL_WHOLE_STATIC_LIBRARIES+=box2d_static下面添加 LOCAL_WHOLE_STATIC_LIBRARIES+=bullet_static $(callimport-module,Box2D/prebuilt-mk)下面添加 $(callimport-module,Bullet/prebuilt-mk) 至此已经完成编译静态库 下载地址 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |