Lua 5.1.2 + luabind 0.7 编译 luabind 0.7 时问题的解决

会出现类似错误:
c:\temp\luabind\src\ref.cpp(95) : error C2062: type 'void' unexpected
c:\temp\luabind\src\ref.cpp(96) : error C2143: syntax error : missing ';' before '{'
c:\temp\luabind\src\ref.cpp(96) : error C2447: '{' : missing function header (old-style formal list?)
c:\temp\luabind\src\ref.cpp(113) : error C2062: type 'int' unexpected
c:\temp\luabind\src\ref.cpp(114) : error C2143: syntax error : missing ';' before '{'
c:\temp\luabind\src\ref.cpp(114) : error C2447: '{' : missing function header (old-style formal list?)
c:\temp\luabind\src\ref.cpp(153) : error C2589: '(' : illegal token on right side of '::'
c:\temp\luabind\src\ref.cpp(153) : error C2059: syntax error : '::'
c:\temp\luabind\src\ref.cpp(157) : error C2589: '(' : illegal token on right side of '::'

需要打开luaconf.h,找到322行:
Lua 5.1.2 + luabind 0.7 编译 luabind 0.7 时问题的解决#undef LUA_COMPAT_GETN
替换成:
Lua 5.1.2 + luabind 0.7 编译 luabind 0.7 时问题的解决#define LUA_COMPAT_GETN
即可解决。

另外需要注意的是,编译时字符集选择不要选择Unicode,选择多字符集貌似是不错的。
上一篇:FFMPEG SDK 开发介绍


下一篇:Mithril – 构建杰出 Web 应用的 JS MVC 框架