環境: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 更新 之前編...