windows下編譯lua5 3 1原始碼

2021-09-30 12:21:08 字數 1854 閱讀 1322

環境:windows 10 pro + visual studio 2015 community + lua5.3.1原始碼

確保裝有vs,因為要用到vs的命令cl。

將以下命令存入compile.bat檔案中,放在lua原始碼的根目錄也就是和doc、src、makefile、readme同級。

這時如果雙擊執行這個bat檔案,一般情況下都會報錯,因為包含cl的目錄並沒有在你的環境變數中。

我們不需要新增環境變數,只需要到開始選單vs的目錄下找到乙個vs命令列(類似的名字)然後切換到bat所在目錄執行就可以了。

執行完之後就可以在src目錄中看到dll檔案、lua.exe和luac.exe了。可以把他們拷貝到其他目錄執行。

簡單測試一下。編輯乙個hello.lua的檔案

print

('hello lua!'

)

命令列執行

lua hello

.lua

或者

luac hello

.lua

lua luac

.out

編譯命令

@echo

off

cd src

@echo

生成dll

檔案

cl

/o2

/w3 /c

/dlua_build_as_dll

*.c

del lua

.obj luac

.obj

link

/dll

/out

:lua531

.dll

*.obj

@echo

生成直譯器

lua.

exe

cl

/o2

/w3 /c

/dlua_build_as_dll lua

.c luac

.c

link

/out

:lua

.exe lua

.obj lua531

.lib

@echo

生成編譯器

luac

.exe

del lua

.obj

link

/out

:luac

.exe

*.obj

cd

..

mkdir bin

move src\lua531

.dll bin

move src\lua

.exe bin

move src\luac

.exe bin

@echo

請檢視根目錄下的

bin資料夾,可將其中檔案放到任意位置執行

pause

Windows平台 lua 5 3開發除錯環境搭建

安裝lua 5.3 debug 外掛程式,在vscode中按ctrl p,輸入 ext install lua debug vscode的除錯需要在乙個資料夾中,隨便建乙個資料夾比如叫luaproject 裡面建乙個lua檔案叫run.lua 配置除錯工具 開啟lua的除錯配置 直接除錯lua檔案修...

lua5 3異常機制

lua本質上利用c函式來操作lua虛擬機器。lua虛擬機器對於c來說只是在堆上的記憶體物件。lua有自己的執行物件 協程 每個協程有自己的呼叫棧。比如下面的函式 function add x,y return x y end如果x或y不能進行加法操作,在呼叫中就會產生異常。產生了異常,虛擬機器需要對...

SLua 中使用 Lua 5 3 的編譯工程

2016 03 05 更新 之前編譯的庫,在 android 下 lua number 和 lua integer 被編譯為了32位,導致從 c 到 lua 過程中有64位到32位整型轉換會出現溢位出錯,出現異常大的負整數。以下修改或是之前遺漏的部分均使用紅色表示。2016 11 21 更新 之前編...