1、準備工做html
一、下載Lua源碼,地址:http://www.lua.org/download.html(我用的是目前最新版5.2.3)ios
二、將源碼放在合適的盤(個人在D盤,路徑D:/Lua-5.2.3/src)學習
三、打開vs2013新建一個win32控制檯應用程序(Win32 console project ),我將他取名爲LuaLiblua
四、肯定後,會彈出應用程序嚮導的提示框,點擊下一步。應用程序類型選擇靜態庫(static Library),附加選項去掉預編譯頭(Precomplied Header ),點擊完成。spa
五、向工程中添加頭文件(.h)與源碼(.c)htm
1)將D:/lua-5.2.3/src中全部.h文件複製到頭文件(Header Files)中教程
2)將D:/lua-5.2.3/src中全部.c文件複製到源文件(Code Files)中ci
六、配置項目屬性,打開項目->屬性->配置屬性get
1)在C/C++項中點開常規,第一項附加包含目錄中填上D:/lua-5.2.3/src源碼
2)在C/C++項中點開高級,第二項編譯爲選擇編譯爲C代碼(/TC)
七、生成項目,生成成功後會Debug(Release)文件中生成lua.lib文件。在這裏我生成時報了錯:
error c4996: 'fopen': This function or variable may be unsafe
若出現這個錯誤,須要在屬性頁的預處理器定義中加入_CRT_SECURE_NO_WARNINGS,再次生成就能夠了。
2、在C++代碼中調用Lua
一、新建win32控制檯應用程序,取名爲TestLua,後面的不用改
二、在該項目的通用屬性中添加Lualib的引用
三、在C/C++項中點開常規,第一項附加包含目錄中填上D:/lua-5.2.3/src
四、在TestLua.cpp中寫入代碼
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <iostream>
extern "C"
{
#include <lua.h>
#include <lualib.h>
#include <lauxlib.h>
}
int _tmain(int argc, _TCHAR* argv[])
{
using namespace std;
lua_State *L = luaL_newstate();
luaL_openlibs(L);
luaL_dofile(L, "test.lua");
lua_close(L);
cin.get();
return 0;
}
五、在TestLua目錄下放入事先寫好的test.lua文件
六、設置TestLua爲啓動項,並運行項目