如何编译lua
因为想尝试一下自己编译lua,所以就用自己蹩脚的英语翻译了以lua5.1中的INSTALL的关于如何在windows下编译lua这部分:
如果你不使用常用的 Unix 工具集,那这个介绍就是为了在你所使用的编译器上建立lua用的。
你将需要建立一个工程(或者你的编译器所所用的)来建立lua的库,解释器和编译器,它们分别如下:
library: lapi.c lcode.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c
lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c
ltable.c ltm.c lundump.c lvm.c lzio.c
lauxlib.c lbaselib.c ldblib.c liolib.c lmathlib.c loslib.c
ltablib.c lstrlib.c loadlib.c linit.c
interpreter: library, lua.c
compiler: library, luac.c print.c
如果你使用 Visual Studio .NET ,你可以在它的命令模式下用 etc/luavs.bat 来完成建立。
如果你只是希望建立lua解释器的,你可以把除了 luac.c 和 print.c 外所有的 .c 文件放进 一个单独的工程中,
或者仅仅使用 etc/all.c文件。
在你自己的程序中把lua作为一个库来使用时,你需要知道怎样用你的编译器建立和使用库。
作为以上的提醒,你可以在建立lua前编辑luaconf.h来选择一些功能。
以下是我编译的方法(vs2005):
1.打开vs的命令行工具,工具-->visual studio 2005 command prompt
2.跳转到 etc的上一级目录,如:cd /d d:\lua
2.执行:etc\luavs.bat( 注意,是 \ 不是 /,写错了不能执行编译 )
3.然后lua51.dll, lua51.lib, lua.exe, and luac.exe就生成在 src路径下了。
当然,也可以自定义生成文件的名字,具体请看luavs.bat。
浙公网安备 33010602011771号