Lua源码编译之CL编译器编译

  通过使用VC下的CL编译器,可方便地编译Lua源码,而无需构造工程并设置各种选项;

以下以源码Lua5.3.1版本为例,将通过CL编译选项直接编译源码,为方便编译将采用批处理脚本,脚本放置在Lua解压后的目录下如:Lua.bat,具体内容如下:

  

mkdir bin
cd src
del *.obj
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL *.c
del lua.obj luac.obj
link /Dll /out:../bin/lua-5.3.1.dll *.obj

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL lua.c luac.c
link /Dll /out:../bin/lua-5.3.1.exe lua.obj ../bin/lua-5.3.1.lib
del lua.obj

link /out:../bin/luac-5.3.1.exe *.obj
del *.obj
cd ..

  在当前路径下创建bin目录,并在bin目录下生成解析器lua-5.3.1.exe,编译器luac-5.3.1.exe,以及必要的导入库lua-5.3.1.lib,动态库lua-5.3.1.dll。

  注意:不能直接双击执行该Lua.bat脚本;须通过VC开发环境的命令工具进入Lua源码解压后的目录下,输入执行:Lua.bat,回车即可。