Lua作爲一個腳本系統,據說天生就是爲嵌入式準備的。可是這個腳本的調試卻非常的不嵌入式。一旦我們將腳本嵌入到我們的工程當中,無時無刻不存在的腳本經常讓我們不之所措。因爲,我們無法跟蹤,無法查看腳本的變量,只能夠通過log輸出來查看腳本運行的情況。
我想作爲每一個Lua的使用者,一定都非常想讓Lua的調試和C++的一樣簡單吧。出於這種想法我自己謝了一個動態庫,作爲調試的服務器端。與其配套的還有一個控制檯程序,用於調試的輸入輸出窗口,並通過管道與服務器連接。因爲服務器端是動態庫,那麼使用起來就非常簡單,只需要調用一下初始化
傳入一個lua_State指針即可。
之後的事情就可以通過控制檯來進行斷點設置,文件瀏覽,單步跟蹤以及局部變量的查看了。
程序過段時間放出來,現在已經可以進行調試了,還有些bug需要解決。希望有興趣的同行一起來討論!
相關的代碼我放到 https://starworld.googlecode.com/svn/trunk/LuaDebuger裏面
調試控制檯在 https://starworld.googlecode.com/svn/trunk/LuaDebugConsole