序:
不知不觉学习Cocos2d-x已经第2个月了,今天有些想法,于是难得停下一直根本停不下来的学习进度,写点东西,记点事情~
目录:
1. Linux(Ubuntu)安装
2. Cocos解压与新建项目
3. Makefile & make初次编译
4. QT安装与配置
5. 使用QT开发Cocos2d-x项目
6. QT开发Cocos2d-x的一些关键问题
7. summary
资源:
VMware 10. |
|
Ubuntu 14.10 .iso | |
QT for Linux | |
Cocos2d-x.zip | Cocos2d-x.org/download/ |
正文:
1. Ubuntu的虚拟机安装:傻瓜式安装即可;
注意:安装时请关闭网络连接,由于安装会自动从网上下载一些文件,而默认的源速度极慢,运气好2个小时安装好,运气不好1天都搞不定。
2. Cocos2d-x解压:
可解压至你喜欢的位置,然后进入目录:cd到你的cocos2dx目录/tools/project-creator
Chmod +x * 把文件设为可执行,否则无效,ls查看是否可执行?
|
技巧1: 打开终端窗口后,输入命令:apt-get install nautilus-open-terminal 系统即会自动安装,安装完成后,注销一下系统,重新运行后,就会发现右键中多了打开终端的选项了。 |
2. 新建项目:
|
Linux下Python是默认安装的,可以直接到控制台(终端)-terminal 创建:
注意:1. Linux下执行需要前面加上“./”
2. 三段:项目,包,语言
3. 初次编译:
到cocos2d-x的根目录:查看Makefile文件
编译Release和Debug: -make -make DEBUG=1 |
然后就报错了: 首先是找不到GL/glfw.h ....... 这是因为没有安装支持的软件造成的~ sudo apt-get install libglfw-dev |
安装支持软件: sudo apt-get update
sudo apt-get install git ssh vim ctags qt-sdk build-essential libx11-dev libxmu-dev libglu1-mesa-dev libgl2ps-dev libxi-dev libglfw-dev libzip-dev libcurl4-gnutls-dev libfontconfig1-dev libsqlite3-dev libglew*-dev openjdk-7-jdk lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6
由于中间如果有错会跳出,建议是1~2个一起apt-get install
|
有些可能没有装,例如: 再次make又报错:lcurl 于是sudo apt-get install libcurl4-gnutls-dev 和libfontconfig1-dev
利用 sudo apt-cache search 寻找软件包的方法很重要 |
说明:这是在Ubuntu上开发cocos2d-x上阻碍前进的关键的第一步
4. QT安装与配置
|
|
点击绿箭头构建,会弹出:
|
Hello World出现~
|
5. 使用QT开发Cocos2d-x项目
添加C++类
|
简单写一个场景,并把AppDelegate.cpp中的场景由HelloWorld替换为GameStart
构建出错: :-1: error: collect2: error: ld returned 1 exit status 这是在Ubuntu上开发cocos2d-x上阻碍前进的关键的第二步
|
构建出错是ld-链接的问题,这个在Windows下用VS是不用去管的,但在Linux下需要去更改Makefile的文件 类似于移植安卓时需要把新的.cpp文件加入到.mk文件~
|
再次构建OK
|
6. QT开发Cocos2d-x的一些关键问题
在使用ControlSwitch或9妹图等 来源于extension, 要包含头文件及使用命名空间,但一运行就报错: 6: error: cocos-ext.h: 没有那个文件或目录 #include "cocos-ext.h" ^
|
这是在Ubuntu上开发cocos2d-x上阻碍前进的关键的第三步 |
在VS上的解决方法网上有很多资料,但Linux下使用QT查不到。。。。。。 在这个问题上自己研究了几个晚上,试着改Makefile,试着改QT-->选项,却一直没有找到解决方法。 直到昨晚我看视频,终于有讲到: |
把samples\cpp\testcpp\proj.linux\Makefile拿出来与当前的做对比:
1. 包含 include 缺少,找不到路径 2. 把INCLUDES全复制过来,替换掉当前文件的,再运行(报ld错误),这是没有把库链接上,需要把STATICLIBS也复制过来,但注意放的位置,放到红箭头位置,放到绿箭头就还是报ld错误 3. 如果需要声音库cocosDenshion,那么SHAREDLIBS和COCOS_LIBS也加进来 |
7. 小结
Windows + VS | Ubuntu + QT |
VS安装包大:>3G | QT安装包 600M |
VS安装时间长达30分钟以上 | QT安装5分钟 |
VS收费或破解版(社区版) | QT 开源版免费 |
VS 需要VAX小番茄助手(收费或破解) | QT 代码提示等接近VS+VAX的水平 |
VS的.h 与 .cpp切换:alt+o | QT切换头文件 :F4 |
VS新加类后直接编译 | 新加 .cpp文件必须在Makefile中加入 |
VS使用其它库不用特殊处理 | 需要在Makefile中更新INCLUDE和LIB |
| 快捷: 在一个分栏中,显示当前文件对应的头文件或.cpp文件 先按下^E 再F4
|
F12转到定义 | F2 |
| Shift +F2 在函数定义、实现中切换 |
列选取 alt+选择 | 列选取同VS |
| 默认添加的文件名都是小写的,把勾去掉!
|