Lua 5.2 编译 For Windows

body
{
font-family: 微软雅黑;
font-size: 11pt;
line-height: 1.5;
}
html, body
{
color: #000000;
background-color: #C2E7C7;
}
h1 {
font-size:1.5em;
font-weight:bold;
}
h2 {
font-size:1.4em;
font-weight:bold;
}
h3 {
font-size:1.3em;
font-weight:bold;
}
h4 {
font-size:1.2em;
font-weight:bold;
}
h5 {
font-size:1.1em;
font-weight:bold;
}
h6 {
font-size:1.0em;
font-weight:bold;
}
img {
border:0;
max-width: 100%;
height: auto !important;
}
blockquote {
margin-top:0px;
margin-bottom:0px;
}
table {
border-collapse:collapse;
border:1px solid #bbbbbb;
}
td {
border-collapse:collapse;
border:1px solid #bbbbbb;
}

1 下载Lua 源码: http://www.lua.org/ftp/

2 编译,编译有两种方式.  1 用vs 编译  2 用vs 命令行编译

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

http://www.cnblogs.com/cydonia/archive/2013/02/04/2892051.html

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

http://blog.csdn.net/zjg555543/article/details/11814563

我在网上找的, 新建一个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");

来自为知笔记(Wiz)

时间: 2024-07-31 07:39:49

Lua 5.2 编译 For Windows的相关文章

nginx多域名ssl证书以及lua模块的编译安装

#!/bin/bash #unzip zip&tar file function  untarfile(){ for i in $( ls . |grep -v .sh) do val=$(echo $i | grep ".zip$" |wc -l) if [[ "$val"  -eq  1 ]];then dirname=$(echo $i|sed "s/.zip//") if [[ ! -d $dirname ]];then echo

Lua:使用MinGW编译Lua5.2.3

在Windows下使用MinGW64,或者TDM64-GCC进行编译,本来以为 make mingw就行了,没想到出了点小问题,让人费解: refer http://lua-users.org/lists/lua-l/2006-12/msg00255.html 解决方法也是太简单了: * build $ cd $LUA_DIR/src $ make mingw $ make luac * install (replace /mingw with your installation directo

Tengine+LUA+Nginx-GridFS+jemalloc编译安装

#安装依赖包保平安 apt-get install root-system-bin autoconf automake gcc c++ libgeoip-dev libxml++2.6-dev libxslt1-dev libxslt1.1 libgd-dev build-essential libyajl-dev git libreadline6 libreadline6-dev #下载相关软件源码包 wget https://github.com/jemalloc/jemalloc/rele

lua curl动态链接库编译安装

关于lua curl的资料网上并不是很多.找来找去就那么几个,所以我绝得很有必要把我的经验记下来,以防下次忘记 ---好记性不如烂笔头. 如果在网上(当然是Google)搜索挂关键字“lua curl”或“luacurl”,你搜索的头两条数据很可能是不一样.因为关于lua的curl库有两个:luacurl和Lua-cURL. 如果你打开了这个网址“http://curl.haxx.se/libcurl/lua/”,你就会看这样一段话: There are two different effort

Live555流媒体服务器编译(Windows下)

最近在回顾之前做过的相关项目,live555流媒体服务器也是其中之一,今天先把live555开源框架在Windows下的编译方法记录一下. live555是一套使用使用开放的标准协议(RTP/RTCP.RTSP.SIP)来处理多媒体流数据的开源C++库,使用LGPL协议.这些库可以编译为Unix(包括Linux和Mac OS X),Windows,和QNX(和其他POSIX系统)来构建流媒体应用.live555已经被用于如"Live555媒体服务器"和"live555代理服务

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

lua调用dll 编译lfs

From:http://blog.csdn.net/snlscript/article/details/16340653 #include <Windows.h> extern "C"{#include <lua.h>#include <lauxlib.h>#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include <lualib.h>

lua curl动态链接库编译安装(二)

下面再介绍一下lua-curl中的lua-curl-0.2.tar.gz版本的安装方法,可能对于一般的人来说这个很简单,但是对于我们这些菜鸟来说就不一样了: # wget http://files.luaforge.net/releases/lua-curl/lua-curl/0.2/lua-curl-0.2.tar.gz # tar zxf lua-curl-0.2.tar.gz # cd lua-curl-0.2 # ./configure --help # ./configure --wi

boost 编译,windows平台

下载Boost及生成bjam.exe文件 到Google网站搜索下载boost_1.52版本库,下载完成后,解压到X:下,这个地址自己随便定义.在解压的文件中搜索build.bat文件,把它所在的目录记下,进入Dos环境下利用CD命令进入build.bat文件目录下,输入命令:"build mingw",会在本目录下生成bin.ntx86\jam.exe和b2.exe文件,只要将bjam.exe拷贝到源文件的根目录下(如下图所示). 2 编译及安装boost库 进入Dos环境,利用CD