码迷,mamicode.com
首页 > Windows程序 > 详细

Lua 5.2 编译 For Windows

时间:2015-04-10 19:42:43      阅读:359      评论:0      收藏:0      [点我收藏+]

标签:

Lua 5.2 编译 For Windows
1 下载Lua 源码: http://www.lua.org/ftp/
2 编译,编译有两种方式.  1 用vs 编译  2 用vs 命令行编译

用vs编译:(我没能理解)

用命令行编译 :(比较简单)

我在网上找的, 新建一个myLua.bat 在Lua 目录下. 在vs 命令行下运行就好了.
内容如下:

cd src
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
cd ..


cd src
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL lua.c
link /out:lua.exe lua.obj lua52.lib
cd ..


cd src
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL lua.c luac.c
link /out:lua.exe lua.obj lua52.lib
del lua.obj
link /out:luac.exe l*.obj
cd .. 


后来我又改了一下: (把编译好的文件放到 lib 目录下,这个就已经够用了)

if exist lib rd lib /q /s
md lib
cd lib

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL ../src/l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
link /LIB /out:lua52_s.lib l*.obj 

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL ../src/l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL ../src/lua.c
link /out:lua.exe lua.obj lua52.lib

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL ../src/l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL  ../src/lua.c  ../src/luac.c
link /out:lua.exe lua.obj lua52.lib
del lua.obj
link /out:luac.exe l*.obj

cd ..
exit

包括各种静态库和动态库
if exist lib rd lib /q /s
md lib
cd lib

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL ../src/l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
link /LIB /out:lua52_s.lib l*.obj

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL /MD ../src/l*.c
del lua.obj luac.obj
link /DLL /out:lua52_md.dll l*.obj

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL /MDd ../src/l*.c
del lua.obj luac.obj
link /DLL /out:lua52_mdd.dll l*.obj

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL /MT ../src/l*.c
del lua.obj luac.obj
link /LIB /out:lua52_mt_s.lib l*.obj

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL /MTd ../src/l*.c
del lua.obj luac.obj
link /LIB /out:lua52_mtd_s.lib l*.obj

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL ../src/l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL ../src/lua.c
link /out:lua.exe lua.obj lua52.lib

cl /O2 /W3 /c /DLUA_BUILD_AS_DLL ../src/l*.c
del lua.obj luac.obj
link /DLL /out:lua52.dll l*.obj
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL  ../src/lua.c  ../src/luac.c
link /out:lua.exe lua.obj lua52.lib
del lua.obj
link /out:luac.exe l*.obj

cd ..
exit


------------------------------
附:测试lua

在Test中添加一个cpp文件

#include<iostream>
using namespace std;

#include<lua.hpp>

int main()
{
    lua_State *l = luaL_newstate();
    luaL_openlibs(l);
    luaL_dofile(l, "main.lua");
    lua_close(l);
    system("pause");
    return 0;
}

ADD 一个lua脚本

1 print("hello world");




Lua 5.2 编译 For Windows

标签:

原文地址:http://www.cnblogs.com/wxf101/p/4415298.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!