cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
cocos2d-x 3.0 中。假设你须要使用CocosStudio、Extensions扩展库 等等。都须要自己手动加入。
加入过程例如以下:(比方说如今我要加入libExtensions,libCocosStudio , libGUI)
1.加入附加项目
右击解决方式--->加入现有项目--->加入:项目文件夹\cocos2d\extensions\proj.win32\libExtensions。然后你会发现左边多了一个libExtensions扩展库
右击解决方式--->加入现有项目--->加入:项目文件夹\cocos2d\cocos\editor-upport\cocostudio\proj.win32\libCocosStudio。然后你会发现左边多了一个libCocosStudio扩展库
libGUI类似....
完毕后类似这样子
2.引用这些项目
右键你的项目---属性 ---通用属性---框架和引用---加入引用,然后加入libExtensions,libCocosStudio。完毕后大概像这样子
3.加入包括文件夹,否则你include头文件会提示找不到
右键---项目---配置属性---C/C++ --- 常规---附加包括文件夹---编辑---加入
$(EngineRoot)
$(EngineRoot)cocos
$(EngineRoot)cocos\editor-support
完毕后大概像这样子
4.引入头文件使用
#include "extensions/cocos-ext.h" #include "cocostudio/CocoStudio.h"
注意写法。不是#include "cocos-ext.h",尽管这样子写win32能够编译通过。但是编译成android apk时会常常找不到cocos-ext.h等等错误
5.编译成android apk须要在android mk文件里增加路径的配置,附上我的android mk文件写法
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := cocos2dcpp_shared
LOCAL_MODULE_FILENAME := libcocos2dcpp
LOCAL_SRC_FILES := hellocpp/main.cpp \
../../Classes/AppDelegate.cpp \
../../Classes/ClipingNodeLayer.cpp\
../../Classes/MainScene.cpp\
../../Classes/MenuTab.cpp
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static
LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static # 加入 cocos_extension 静态库
LOCAL_WHOLE_STATIC_LIBRARIES += cocostudio_static # 加入 cocostudio 静态库
include $(BUILD_SHARED_LIBRARY)
$(call import-module,2d)
$(call import-module,audio/android)
$(call import-module,Box2D)
$(call import-module,extensions) # 导入 extensions 模块
$(call import-module,editor-support/cocostudio) # 导入 cocostudio 模块6 最后编译为apk
cmd -->cd F:\VsProjects\cocos3Test (project根文件夹)
然后命令:
cocos compile -p android -j 4然后泡杯热茶,坐等编译成功~~
浙公网安备 33010602011771号