cocos2dx 3.10 添加cjson问题!

想把原来2.x的项目升级到3.x版本,之前没时间一直没有做这件事,3.x版本特性还是蛮多的。在lua代码中,大部分做了兼容。

我们项目使用的cocos2dx-lua版本,把资源、lua代码拷贝过来。
首先遇到cjson报错,3.x里面自带cjson,只是没有添加而已。
编译的时候,出现了几十个无法解析符号
lua_cjson.obj : error LNK2019: 无法解析的外部符号 “int __cdecl lua_gettop(struct lua_State *)” (?lua_gettop@@YAHPAUlua_State@@@Z)

这位问题找了好久,发现只需要在项目设置就可以了

c/c++ => 高级 => 编译为:从 编译为 C++ 代码 (/TP) 改成 默认值

就可以了
一直有个警告,哪位大大来解释下。

2>AppDelegate.obj : warning LNK4217: 本地定义的符号 ?getInstance@LuaEngine@cocos2d@@SAPAV12@XZ (public: static class cocos2d::LuaEngine * __cdecl cocos2d::LuaEngine::getInstance(void)) 在函数 "public: virtual bool __thiscall AppDelegate::applicationDidFinishLaunching(void)" (?applicationDidFinishLaunching@AppDelegate@@UAE_NXZ) 中导入2>AppDelegate.obj : warning LNK4217: 本地定义的符号 ?getLuaStack@LuaEngine@cocos2d@@QAEPAVLuaStack@2@XZ (public: class cocos2d::LuaStack * __thiscall cocos2d::LuaEngine::getLuaStack(void)) 在函数 "public: virtual bool __thiscall AppDelegate::applicationDidFinishLaunching(void)" (?applicationDidFinishLaunching@AppDelegate@@UAE_NXZ) 中导入

环境:
win10
VS2015

applicationDidFinishLaunching()
添加
lua_State* L = engine->getLuaStack()->getLuaState();
lua_module_register(L);
luaopen_cjson(L);

警告的问题,试着在项目的预处理中添加_USRLUASTATIC预处理

不打算用 QUICK ?

现在不用quick也很方便。

首先谢谢层主!你这个预处理参数解决了我遇到的问题。
再说一下我遇到的问题,以便给其他人提供参考:
我在Win7上,用VS2015参照这个:http://zuolun.me/blog/2014/11/12/cocos2d-x-luaengine/ 使用 cocos2dx 3.10 搭建环境,
我在只在 AppDelegate.cpp 中的 applicationDidFinishLaunching 函数的 return 的前一行添加了一行 :auto engine = LuaEngine::getInstance(); (类名还有单例方法的跳转都是正常的)
尝试运行后出现了 LNK2019 错误:
无法解析的外部符号 “__declspec(dllimport) public: static class cocos2d::LuaEngine * __cdecl cocos2d::LuaEngine::getInstance(void)” (_imp?getInstance@LuaEngine@cocos2d@@SAPAV12@XZ),该符号在函数 “public: virtual bool __thiscall AppDelegate::applicationDidFinishLaunching(void)” (?applicationDidFinishLaunching@AppDelegate@@UAE_NXZ) 中被引用 HelloCpp E:\Code\Cocos2dx\HelloCpp\proj.win32\AppDelegate.obj 1

虽然用了你的预处理参数之后不再报错了,
但是手里有个别人写的项目,和我参照的那个网址搭出来的环境大致一致,
可我没有在别人项目的预处理器定义一栏中找到_USRLUASTATIC…
不知道层主能否帮忙解答一下?确实很困惑…

您好,您不用quick的话,sublime text里cocos2dx api部分没有智能提示,怎么破