一) 、创建lua源代码工程,编译lua的静态库
html
一、下载Lua源码 http://www.lua.org/download.html 测试
a 下载后解压到一个目录下,这里假设解压到D:\lua-5.1.5
b 注意下载的版本,若是是5.2.x,后面代码中的C API发生了改变
二、在VS2010中新建一个静态库项目,项目命名为lua
a 选择新建 Win32 console project
b 在wizard界面选择 static Library;不选择Precomplied Header
三、往工程中添加代码(Add -> Existing Item)
a 添加D:\lua-5.1.5\src 目录下的*.h文件到项目的Header Files目录下
b 添加D:\lua-5.1.5\src 目录下的*.c文件到项目的Source Files目录下
(可选)四、配置项目的属性,在项目的“配置属性” 界面中操做
a Configuration Properties -> C/C++
-> General -> Additional Include Directories
添加D:\lua-5.1.5\src
b Configuration Properties -> C/C++
-> Advanced -> compile as
这里的选择将影响后面代码中如何指定编译连接方式,后面的测试选择的是Compile as C code
(可选)五、 生产项目 Build
若是是DEBUG mode 将在Debug目录下看到一个lua.lib文件,Release mode的lib文件在Release文件下
二)、后面添加一个项目尝试在C/C++代码中
, 调用刚才的lua静态库
一、在解决方案中添加一个 Win32 console project,项目名称命名为testlua,后面wizard界面中的选项无需修改
二、添加对lua项目的引用
a Common Properties -> Framework and References -> Add New References
选择lua项目
三、添加对头文件的include directory
a Configuration Properties -> C/C++
-> General -> Additional Include Directories
添加D:\lua-5.1.5\src
四、在项目的的在testlua.cpp文件中添加下面的代码
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
extern "C"
{
#include <lua.h>
#include <lualib.h>
#include <lauxlib.h>
}
int _tmain(int argc, _TCHAR* argv[])
{
lua_State *L = lua_open();
luaL_openlibs(L);
const char *buf = "print('Hello World')";
luaL_dostring(L,buf);
lua_close(L);
getc(stdin);
return 0;
}
5,设置默认的项目,不然要去手动运行生成的可执行文件testlua.exe (见附图)
Solution -> Properties -> Common Properties ->Startup Project ->Single startup project
把默认的lua改成testlua
按F5或Ctrl+F5,将会在控制台中输入了Hello World。
来自:http://blog.csdn.net/berdy/article/details/7925040
附图1:在一个项目中添加另外一个项目
附图2: 设置默认项目