quick-cocos2d-x + Lua 开发
quick-cocos2d-x + Lua 开发
quick-cocos2d-x + Lua 开发 首页在Eclipse中搭建quick-cocos2d-x的lua开发环境.
1. 首先需要给eclipse装一个lua的plugin(google之), 或者直接下载ldt集成开发环境(http://www.eclipse.org/koneki/ldt/), 目前稳定版本是0.9。
2.通过git工具clone: https://github.com/dualface/quick-cocos2d-x,比如我放在e盘. 如果你后面需要重新编译quick,那你需要git submodule update一下 cocos2dx的代码,具体参考quick说明。
3. 尝试运行E:\quick-cocos2d-x\sample\CoinFlip\run_simulator_win32.bat, 如果你是xp系统,可能会弹出无法定位inet_ntop这些错误, 这是因为quick里使用了luaSocket,而它使用了一些winXP不支持的系统API, 我修改了部分socket代码,在WIN32下替换了这些API的调用,https://github.com/laomoi/c2x_lua_bindings/tree/master/luasocket_winxp_patch 把这里面的3个文件替换掉lua_extension/socket里的文件后再重新编译生成模拟器。
4. 打开ldt,新建lua工程(以sample\CoinFlip为例)
5. 留意到ldt自带了一个lua5.1的execution environment, 这个东西主要是为了实现代码提示用的, 默认它支持了lua5.1的一些系统API, 比如io, os, math这些
6. 为了支持语法提示Cocos2dx和quick额外添加的一些lua bindnig和 quick framework,我们现在需要重新制作一个execution environment之后替换这个默认的lua 5.1.
详细制作的过程可参考https://github.com/laomoi/lua_complete_eclipse, 这里我们直接下载我之前生成好的execution environment, 然后在项目里添加进来
添加成功后, 项目目录应该如图所示, 下面有个quickLua.(debugger.lua如果没有不要紧,后面步骤会添加进去)
如果此时还没看到图中所示的quickLua, 那么重新在项目属性里, Lua->BuidPath->Libraries-> 点击Add Library重新添加一下 quickLua。
7. 在代码里试试看是否已经能弹出语法提示了
8. 下面配置调试环境让ldt支持在quick的模拟器里断点调试
点击debug,就会启动一个debug的侦听器等待lua程序通过socket连进来, 默认是30秒超时。
9. Lua程序要连进来,需要Luasocket的支持(参考第3步说明), 同时需要在项目里引入一个debugger.lua文件,这个文件可以在ldt里面生成导出
只是0.9版本的ldt默认导出的debugger文件不支持luajit,而quick使用了luajit2,所以我们需要重新制作一个debugger.lua, 这里已经有个猛男制作好了:
gist.github.com/jdesgats/5383865/raw/56591f94f48a253a821a5610525b402206c3df96/debugger.lua
直接下载拷贝到你的scripts目录里
然后在项目lua代码开头(比如game.lua,或者main.lua)加以下代码
local initconnection = require(“debugger”)
initconnection(’127.0.0.1′ , 10000 , ‘luaidekey’)
10. 尝试一下断点调试, 比如在scene/MenuScene 开头加个断点, 然后ldt开启debug侦听, 接着运行sample\CoinFlip\run_simulator_win32.bat, 顺利的话你会看到模拟器启动话,就停在断点上了
11. 你可能会发现调试时无法跳入quick framework里的代码,比如display.lua里的函数执行无法跳入。简单的解决方法是, 把framework拷贝入你的项目目录, 然后注释掉 main.lua里的CCLuaLoadChunksFromZip(“res/framework_precompiled.zip”)
再进行调试就可以跳进display.lua了。
12. ldt默认会解析execution environment里面和 build-source里面的lua文件,如果你发现你自己写的lua文件没有 被解析到,请检查
A. 你的代码文件文件是否在build-source里, 右键属性, build, source-path 进行查看
B. 是否依照了 ldt规定的文档格式写了注释 ,参考 http://wiki.eclipse.org/Koneki/LDT/User_Area/Documentation_Language
quick-cocos2d-x + Lua 开发的更多相关文章
- 在cocos code ide的基础上构建自己的lua开发调试环境
对于一种语言,其所谓开发调试环境, 大体有以下两方面的内容: 1.开发, 即代码编写, 主要是代码提示.补齐, 更高级一点的如变量名颜色等. 2.调试, 主要是运行状态下断点.查看变量.堆栈等. 现在 ...
- 详解LUA开发工具及其环境配置
LUA开发工具及其环境配置是本文要介绍的内容,主要是来了解并学习lua开发工具的使用和环境的配置,第一次接触LUA的话,就跟本人一起学习吧.看我能不能忽悠到你. LUA是语言,那么一定有编写的工具.第 ...
- Lua开发环境配置
Lua(英语发音:/ˈluːə/)程序设计语言是一个简洁.轻量.可扩展的脚本语言,是葡萄牙语中“Luna”(月亮)的意思. Lua is a powerful, fast, lightweight, ...
- nginx 与 lua 开发环境搭建
首先下载最新版的 相关软件 的安装文件. nginx: http://nginx.org/en/download.html LuaJIT: http://luajit.org/download.htm ...
- 一、ESP8266入门(基于LUA开发)
序 一入坑便停不下来... 还挺有意思的哈,233,,,, 资料杂,自己一个一个去找确实浪费了不少时间,而且大多还都是英文的,需要硬着头皮看. 这次实践入门,更是对英语的重要确信无疑.Github必须 ...
- Nginx详解二十三:Nginx深度学习篇之Nginx+Lua开发环境搭建
Nginx+Lua开发环境 1.下载LuaJIT解释器wget http://luajit.org/download/LuaJIT-2.0.2.tar.gztar -zxvf LuaJIT-2.0.2 ...
- [转载]使用VS2015搭建Lua开发环境
参考原文请看: Lua学习笔记1:Windows7下使用VS2015搭建Lua开发环境(一) Lua学习笔记2:Windows7下使用VS2015搭建Lua开发环境(二) 本篇主要分以下几个部分: 一 ...
- 快速将wax配置到项目中进行lua开发
通过Finder浏览到你保存该项目的文件夹.创建三个新的文件夹:wax.scripts和Classes. 第一:首先,下载源代码的压缩包.Wax放在GitHub上(https://github.com ...
- CentOS安装OpenResty(Nginx+Lua)开发环境
一.简介 OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库.第三方模块以及大多数的依赖项.用于方便地搭建能够处理超高并发.扩展性极高 ...
随机推荐
- 第二百五十九节,Tornado框架-模板语言的三种方式
Tornado框架-模板语言的三种方式 模板语言就是可以在html页面,接收逻辑处理的self.render()方法传输的变量,将数据渲染到对应的地方 一.接收值渲染 {{...}}接收self.re ...
- 要立刷金组flag了T_T
刷了那么多银组,发现自己好多不会啊... 果然太弱 在这感谢hzwer神犇的blog.. 大部分题解都从黄学长这里来orz. orz.... 果然我太水
- PyQt的Layout的比例化分块。
一. QGridLayout: // 列比 第0列与第1列之比为 1:2 layout2p1 -> setColumnStretch(0, 1); layout2p1 -> setColu ...
- c#用run32dll打开系统dll(如系统图片查看器,并置最顶层)
[DllImport("user32.dll", EntryPoint = "SetWindowPos",CharSet = CharSet.Auto)] st ...
- ThinkPHP项目笔记之RBAC(权限)上篇
当理清这5个表的关系,接下来,就是功能介绍了.
- win7下cmake编译opencv2.3.1生成opencv—createsamples.exe和opencv_haartrainingd.exe
第一步:下载安装cmake,之后进行默认安装即可,这步略过. 第二步:配置cmake ,使cmake找到opencv进行编译安装 watermark/2/text/aHR0cDovL2Jsb2cuY3 ...
- ulimit命令学习
通过ulimit -n命令可以查看linux系统里打开文件描述符的最大值,一般缺省值是1024,对一台繁忙的服务器来说,这个值偏小,所以有必要重新设置linux系统里打开文件描述符的最大值.那么应该在 ...
- JZOJ.5326【NOIP2017模拟8.21】LCA 的统计
Description
- 微信小程序-云开发(手记)
微信小程序-云开发(手记) 1.创建data.json文件 注意以下几点要求: 入门示例: init方法的env:默认环境配置,传入字符串形式的环境 ID(理解为数据库)可以指定所有服务的默认环境(意 ...
- R中利用SQL语言读取数据框(sqldf库的使用)
熟悉MySQL的朋友可以使用sqldf来操作数据框 # 引入sqldf库(sqldf) library(sqldf) # 释放RMySQL库的加载(针对sqldf报错) #detach("p ...