Cocos2d-x 3.X CMake MinGW版本编译运行
来源:互联网 发布:怎么看见手机淘宝评价 编辑:程序博客网 时间:2024/05/18 01:58
Cocos2d-x 3.x已经支持使用CMake来进行构建了,这里尝试以Qt Creator IDE来进行CMake构建。
Cocos2d-x 3.X 地址:https://github.com/cocos2d/cocos2d-x
1.打开Qt Creator,菜单栏→"打开文件或项目...",打开cocos2d-x目录下的CMakeLists.txt文件;
2.弹出CMake向导,如下图所示:
设置构建的目录,然后点击"下一步",设置cmake.exe文件的路径,继续"下一步";
3.在"执行CMake"界面,"创建器"选择MinGW项,然后直接点击"执行CMake"按钮,如下图所示:
4.没有错误的话,直接点击"完成"。生成的项目结构如下:
5.搭建 MSYS2 环境,可以很方便的生成MinGW第三方库,参见文章《MSYS2 环境搭建》,目前需要生成的库有以下:zlib、jpeg、png、tiff、webp、freetype、glew、glfw、xz、bzip2等。另外libwebsockets库需要自己编译,参见文章《MinGW 编译libwebsockets》。
6.接着设置环境变量来进行引用这些库,切换到“项目”页面,在“构建环境”下方添加变量:
2
CPLUS_INCLUDE_PATH D:\msys2\msys32\mingw32\include
LIBRARY_PATH D:\msys2\msys32\mingw32\lib
LIBRARY_PATH D:\msys2\msys32\mingw32\lib
7.因为glew需要链接静态库,而MSYS2环境下动态库和静态库在相同路径,会首先链接动态库。打开"...\cocos2d-x\cocos\2d\CMakeLists.txt"文件,更改其中语句:
2
3
4
5
6
7
8
9
10
11
12
if(WIN32)
if(MINGW)
set(COCOS_LINK
z
jpeg
png
webp
tiff
glfw3
glew32
if(MINGW)
set(COCOS_LINK
z
jpeg
png
webp
tiff
glfw3
glew32
8.进行编译。
9.将"D:\msys2\msys32\mingw32\bin"文件夹下所需要的DLL拷贝到"...\cocos2d-x-build\bin\testcpp"文件夹下。点击左侧"项目"→"运行",选择运行配置"testcpp",设置其"工作目录"为:F:\MyCode\qt\Pro\cocos2d-x-build\bin\testcpp\Resources,如下图所示:
10.在Qt Creator中点击运行,即可看到界面,如下图所示:
另外,需要结合IncrediBuild进行联合编译的话,可以点击左侧"项目"→"构建"→"构建步骤",先禁用掉原先的Make步骤,然后"添加构建步骤"→"自定义处理步骤",在"命令"处指定联合编译的批处理文件,可以参照文章《Qt MinGW 使用联合编译IncrediBuild》。如下图所示:
0 0
- Cocos2d-x 3.X CMake MinGW版本编译运行
- Cocos2d-x 3.X CMake MinGW版本编译运行
- Cocos2d-x 3.X Qt MinGW版本编译运行
- Cocos2d-x 3.x版本---创建项目
- ubuntu 10.04运行cocos2d-x 3.x
- Cocos2d-x 3.x 编译Android方法
- Cocos2d-x版本升级
- Cocos2d-x版本升级
- cocos2d x 3.x
- android cocos2d-x 编译
- cocos2d-x编译
- cocos2d-x编译出错
- vs2005编译Cocos2d-x,当前最新版本cocos2d-2.1rc0-x-2.1.3
- cocos2d-x之android编译环境搭建(第二篇)[版本:cocos2d-x-3.1.1]
- cocos2d-x游戏开发系列教程-编译运行我们的第一个cocos2d-x游戏程序
- 初试cocos2d-x,编译运行cocos2d-x范例的过程和遇到的问题。
- 总结Cocos2d-x 3.x版本的一些变化
- 总结Cocos2d-x 3.x版本的一些变化
- Android---利用Google的云消息
- JDBC连接数据库 mysql
- jquery操作select下拉框的多种方法(选中,取值,赋值等)
- SSH配置错误1
- 赫夫曼编码
- Cocos2d-x 3.X CMake MinGW版本编译运行
- 28 Android 从sdcard 卡下删除文件
- jquery-ajax请求后台数据转换json显示在select下拉列表
- 动态加载资源(云风的blog)
- install jdk in ubuntu
- 库里稚嫩的脸庞背后辛酸故事
- 网络编程学习_IO复用:select/poll
- 【磁盘处理相关方法】3,得到最空闲的磁盘
- HDFS 用户手册(Apache Hadoop 2.1.1-beta)