Single

Ubuntu下编译Cocos2D-X-3.6 Linux工程

前言

把一个Cocos 2d-x-3.4的项目升级到3.6,并且在Windows下用VS2013调试好了,现在我们要把它在Linux下调通,看看还有些什么坑。毕竟以前没在Linux下做过开发,很多东西要学。

现在就开始学习的过程。

准备工作

首先打开项目根目录下的CMakeLists.txt,把GAME_SRC和GAME_HEADERS里面的内容替换成项目里面的.cpp和.h文件名。一堆文件得一个个弄啊,还好proj.win32下面的.vxproj文件里面也有这些东东,一个个拷贝过来吧。注意win32下的目录分隔符是”“,linux下必须换成”/”。

然后再修改一下系统的包含目录。原来初始的只有这些东东:

include_directories(
  /usr/local/include/GLFW
  /usr/include/GLFW
  ${COCOS2D_ROOT}/cocos
  Classes
)

项目用到了Cocos Studio以及SimpleAudio,还得加上对应的路径:

include_directories(
  /usr/local/include/GLFW
  /usr/include/GLFW
  ${COCOS2D_ROOT}/cocos
  ${COCOS2D_ROOT}/cocos/audio/include
  ${COCOS2D_ROOT}/cocos/editor-support
  Classes
)

开始调试

cocos compile -p linux

报错如下:

/home/ace/Devlop/cross/cocos2d/cocos/editor-support/cocostudio/DictionaryHelper.h:28:27: fatal error: json/document.h: No such file or directory
#include “json/document.h”
^

查找一下,这个json/document.h在cocos2d/external目录下。再次修改CMakeLists.txt:

include_directories(
  /usr/local/include/GLFW
  /usr/include/GLFW
  ${COCOS2D_ROOT}/cocos
  ${COCOS2D_ROOT}/cocos/audio/include
  ${COCOS2D_ROOT}/cocos/editor-support
  ${COCOS2D_ROOT}/external
  Classes
)

再次编译,成功了。前面跑成功的Hello Word不能算,这是我第一次在linux下跑起来一个自己做的游戏,截图纪念一下。


总结

    Linux下编译,CMakeLists是个很重要的文件,除了源文件和包含文件得一个个写进去以外,系统本身的一些包含文件路径得一个个加到include_directories,我这里没有用到extensions以及cocos/networks的东东,如果用到了都得加进去。
    如何将现有的文件名批量添加进来,是一个值得研究的问题。不知道有没有工具可以直接添加,或者自己用python/lua甚至c++来写个小工具完成这个事情,貌似也并不困难。
    后续得将这个实战项目的Android项目在linux下调通,才算是全部大功告成。

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

Ubuntu 下配置/编译/运行 Cocos2dx项目 http://www.linuxidc.com/Linux/2015-07/120723.htm

新里程碑:Cocos2d-x v3.0 正式版本发布! http://www.linuxidc.com/Linux/2014-04/100858.htm

Cocos2d基础及基本函数 http://www.linuxidc.com/Linux/2014-02/97382.htm

Cocos2d 如何做 Android 适配 http://www.linuxidc.com/Linux/2013-05/84616.htm

剖析Cocos2d-x之Action实现 http://www.linuxidc.com/Linux/2013-04/82436.htm

Ubuntu下Cocos2d-x开发环境搭建及配置 http://www.linuxidc.com/Linux/2013-03/81876.htm

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

:请点这里
:请点这里

:http://www.linuxidc.com/Linux/2017-06/145287.htm

暂无评论

发表评论