在Windows下使用mingw去編譯lua的源碼
下載安裝mingw和lua的源碼(我使用的版本是5.1.4)這是不用說的了。
右鍵解壓到當前文件夾,得到SRC的目錄的詳細路徑爲D:/lua-5.1.4/src
然後打開運行,輸入CMD,進入D:/lua-5.1.4目錄,並運行命令
make mingw(表示使用mingw平臺來編譯該源碼).
其時這樣就已經編譯完成了,lua.exe luac.exe lua51.dll liblua.a
下面就可以在自己的C程序中去編寫代碼了,簡單的例子如下:
#include <stdio.h>
#include <lua.h>
#include <lauxlib.h>
#include <lualib.h>
int main (void)
{
char buff[256];
int error;
lua_State *L = lua_open(); /* opens Lua */
luaL_openlibs(L);
while (fgets(buff, sizeof(buff), stdin) != NULL)
{
error = luaL_loadbuffer(L, buff, strlen(buff), "line") || lua_pcall(L, 0, 0, 0);
if (error)
{
fprintf(stderr, "%s", lua_tostring(L, -1)); lua_pop(L, 1);/* pop error message from the stack */
}
}
lua_close(L);
return 1;
}
這裏代碼我就不給出解釋了。
然後用GCC去編譯這段.C代碼,我們再來寫個MAKEFILE文件
文件內容如下:
all:
gcc -o t.exe t.c -ID:/lua-5.1.4/src D:/lua-5.1.4/src/liblua.a
-I後面表示非常用搜索路徑中的源文件地址
藍色部分是庫文件的詳細地址