新建一个 static library 工程,把解压得到的目录下的src子目录中的所有.h和.c文件拷贝到新工程目录下。
工程中删除自动生成的 main.c 文件,添加进除lua.c、luac.c和lua.hpp外的所有.h和.c文件。
编译,得到 libLua.a 即是库。注意,如果你没有重设过输出目录,这个 liblua.a 文件应该在你的源代码目录里。
然后把 libLua.a 放到编译器的 Lib 目录下,把 lauxlib.h、lua.h、luaconf.h、lualib.h 放到编译器的 include 目录下(C++用户再添加个 lua.hpp),最好新建个 lua 子目录存放头文件更清晰。
其实最关键就是除开不必要的文件,实际上:
编译 lua(lua.exe,解析器) 时删除luac.c,加入lua.c。
编译
luac(luac.exe,字节码编译器)时删除lua.c,加入luac.c。
编译
lib和dll(liblua.a和lua.dll,库)时把lua.c和luac.c都删除。
另外要注意:lua 5.2.1 创建一个指向Lua解释器的指针的函数 lua_open 修改为
luaL_newstate。
即把工程从lua5.1库转到5.2库时,在调用 lua_open()
的地方都需要修改为 luaL_newstate()。
原文:http://www.cnblogs.com/myart/p/3536755.html