前言
本文记录了为最新版本的cocos2d-x lua在mac上搭建开发环境的过程。
遇到的问题:
-
找到正确的lua文件位置,以desktop.app为例,在ZeroBrane中要加载 desktop.app/Contents/Resource/src下面的lua代码
-
require(“mobdebug”) get file data from mobdebug.lua failed.
solve: bug 存在于LuaLoader, ${zbs}/lualibs/?/?.lua, 它并不会去尝试加载 ${zbs}/lublibs/mobdebug/mobdebug.lua, 而是仅仅替换最后一个问号,即?.lua,搜索完${zbs}/lualibs/?/mobdebug.lua不做进一步的搜索了。因此我还要显式地把${zbs}/lualibs/mobdebug/?.lua也加入package.path中
-
mobdebug.lua 102行:require “socket”, 报错:USE “ cc.exports.socket = value “ INSTEAD OF SET GLOBAL VARIABLE
solve: 原因是cocos2d-x lua开启了全局变量定义的检测,
1) 在main.lua中,require "cocos.init"之前,引入mobdebug.lua, 此时,cocos的全局变量检测机制还没有打开。 2) 在framework/init.lua中`CC_DISABLE_GLOBAL`设为false, 即关闭全局变量检测开关。
-
加载main.lua时: error: syntax error during pre-compilation, 编译错误提示信息太简单,很难定位到底哪行出了问题
solve:修改LuaStack::luaLoadBuffer()方法
const char* error = lua_tostring(L, -1); CCLOG("[LUA ERROR] error result: %s",error); lua_pop(L, 1);
-
设置ZeroBrane的style theme, 打开config/theme-picker.lua, 点击主题超链接,即可实时预览效果,确定之后,复制生成的代码到config/user.lua保存即可。