亚洲ca88手机版官网:如何在Ubuntu下编译生成自己创建的Cocos2dx项目

Ubuntu 下配置/编译/运行 Cocos2dx项目

是因为项目原因,须要把贰个选拔cocos2dx的等级次序放到Linux下运作(在Windows下利用VS编写,可以不奇怪运维),深夜调试了大概3
~4钟头,终于把品种运作了四起。在这里记录一下小心的事项,方便温馨也能唤醒大家不要犯同样的荒谬。

自己动用的是Ubuntu kylin 14.04 , cocos2dx本子是2.2.3。

花色工程文件如下:

亚洲ca88手机版官网 1

曾经包蕴了cocos2dx的文件包,自身的项目是在projects中。

projects文件夹内容如下:

Classes文件夹中是类别的源文件,蕴含部分.h以及.cpp的源代码。

Resources文件夹中是项指标能源文件,包涵部分图形和文件。

亚洲ca88手机版官网 2

而小编辈首要要关怀的正是proj.linux文件夹,他里头的故事情节如下:

main.cpp是项目标主函数,个中包涵了对上层的classes文件的调用。

build.sh以及makefile文件都是为项目标编译而作的,是大家着重关心的局地。

亚洲ca88手机版官网 3

本人的makefile文件如下,仅供参考:

EXECUTABLE = TheDemo

INCLUDES =  -I../ \
    -I../../ \
    -I../Classes \
    -I$(COCOS_ROOT)/CocosDenshion/include \
亚洲ca88手机版官网:如何在Ubuntu下编译生成自己创建的Cocos2dx项目。    -I$(COCOS_ROOT)/extensions/ \
    -I$(COCOS_ROOT)/external/ \
    -I$(COCOS_ROOT)/external/chipmunk/include/chipmunk
//这里要留神要含有全体品类文件,对于本人的话,正是上面所波及的classes文件夹的内容
SOURCES = main.cpp \
        ../Classes/AppDelegate.cpp \
        ../Classes/HelloWorldScene.cpp \
    ../Classes/eventManager.cpp \
    ../Classes/GameData.cpp \
    ../Classes/GameScene.cpp \
    ../Classes/levelselect.cpp \
    ../Classes/MyNodes.cpp

COCOS_ROOT = ../../..
include $(COCOS_ROOT)/cocos2dx/proj.linux/cocos2dx.mk

//这里是部分lib文件以及库文件,是参谋cocos2dx的样例项目写的,就是这里未有搞对浪费了不短日子。
SHAREDLIBS += -lcocos2d -lcocosdenshion -lcurl -lpthread
COCOS_LIBS = $(LIB_DIR)/libcocos2d.so $(LIB_DIR)/libcocosdenshion.so

STATICLIBS += \
    $(LIB_DIR)/libextension.a \
    $(LIB_DIR)/libbox2d.a \
    $(LIB_DIR)/libchipmunk.a
$(TARGET): $(OBJECTS) $(STATICLIBS) $(COCOS_LIBS)
$(CORE_MAKEFILE_LIST)
    @mkdir -p $(@D)
    $(LOG_LINK)$(CXX) $(CXXFLAGS) $(OBJECTS) -o
[email protected]
$(SHAREDLIBS) $(STATICLIBS)

$(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST)
    @mkdir -p $(@D)
    $(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) $(VISIBILITY)
-c $< -o
[email protected]

$(OBJ_DIR)/%.o: ../%.cpp $(CORE_MAKEFILE_LIST)
    @mkdir -p $(@D)
    $(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) $(VISIBILITY)
-c $< -o
[email protected]

非常供给小心的是在编译和链接的长河中如若出现不恐怕对应或然干涸文件的动静。在类型文件以及库文件确认保证完整的气象下大半是makefile文件并未有写对。未有包括部分文件目录或然贫乏lib文件。假设出现这么的图景应当小心。

若是命令行操作比较劳累的话使用IDE是很好的取舍,因为并非老大理解ubuntu,还在学习进度中,调节和测验这么些类型应用的是Netbeans
8.0.2,感到依旧相比好用的。

依赖一张终于运维成功的截图:

亚洲ca88手机版官网 4

日后还要更进一走入木八分的询问Linux~

6.Run as Android Application
就可以,在proj.android的bin目录下会变卦贰个apk文件,至此移植甘休。

     
在网络找了无数资料,结果都是假若在Ubuntu下编写翻译Cocos2d-x自带的这一个例子。刚起初对makefile不领会,结果弄了久久才弄好,在此地记录一下,顺便也给那个有必要的人做三个参照,不要走太多的弯路。
    

前言

————————————–分割线

新里程碑:Cocos2d-x v3.0 正式版本公布!

Cocos2d基础及宗旨函数

Cocos2d 如何做 Android 适配

剖析Cocos2d-x之Action实现

Ubuntu下Cocos2d-x花费境遇搭建及安顿

     
首先运营create-android-project.sh创设多少个新的品种,作者比较喜欢把项目位于一同,相比较好管理,所以作者把新建的档期的顺序活动到当前顾客目录下的Projects/Cocos2dx目录下。

Cocos2d-x是三个开源的运动2D游戏框架,MIT许可证下公布的。那是三个C++ Cocos2d-BlackBerry体系的本子。Cocos2d-X向上的要害是环绕Cocos2d跨平台,Cocos2d-x提供的框架。Cocos2d-x品种能够很轻易地树立和平运动作在iOS,Android,华为Blackberry等操作系统中。Cocos2d-x还辅助Windows、Mac和Linux等桌面操作系统,由此,开拓者编写的源代码很轻松在桌面操作系统中编辑和调养。

————————————–分割线

下配置/编写翻译/运维 Cocos2dx类别由于项目原因,必要把三个运用cocos2dx的项目放到Linux下运转(在Windows下行使VS编写,能够健康运行),…

      然后走入proj.Android/jni目录下,张开Android.mk,修改如下:
将:
    COCOS2DX_ROOT=”$DIR/../..”
改为:
    COCOS2DX_ROOT=”$DIR/../../../../cocos2d-x-2.1.5/” 
#对峙于当前目录的cocos2d-x的目录,那是本身的目录
修改完成后保存未来就足以运作build_native.sh编写翻译Android下的连串了,假若提醒NDK_ROOT未有安装的话就使用export
NDK_ROOT=(你的NDK的目录,同样也是相对于当前目录的岗位),例如笔者的是export
NDK_ROOT = ../../../../Android/ndk-r9

下载SDK