在cocos2d-x中調試lua


cocos2d-x開發包中內置了lua,而且也內置了tolua++,提供了lua對C++的支持.在官網下載的開發包中的sample就包含了

lua的實例.如何去調試項目中的lua代碼呢? 今天的主題就是在cocos2d-x中調試lua代碼.

 

有兩個工具可以選擇,一個簡單點,一個復雜點.

1. Decoda(商用,需要收費,而且很貴,不過有好心人分享了破解版)

2. LuaEdit(開源)

我的意思不是在評價這兩個debug工具,而是采用兩種工具使用的方式難易.

 

還是先說說簡單容易操作的方式吧.這個不需要改動代碼.(Decoda)

我是在window上面編譯的HelloLua sample,工具就是VS2010. debug模式編譯.這個就不用多說了吧.生成的文件在Debug.win32

目錄下面,而且包含了很多的鏈接庫文件.

 

啟動Decoda,在Debug選項中選擇Start Debugging[F5],需要做的就是在Commad選項中選擇執行debug的文件的絕對路徑.

下面就開始debug,但是會提示一個錯誤:

很清晰,在cocos2d-x的后台輸出了,提示我們找不到hello.lua文件.當然也是找不到hello2.lua文件的.

這個是因為路徑的問題,我沒有配置vs,導致編譯后生成的文件不是在當前項目的文件夾下,所以找不到lua文件,那就到HelloLua sample

文件夾下面將Resource文件夾下面的文件都拷貝到當前目錄就可以了.然后再執行debug就可以看到游戲畫面了.注意查看當前后台輸出

信息,是正常的,這個需要確認.

 

注意現在還沒有插入斷點,所以關閉現在的debug,然后再lua文件中插入斷點再重復執行剛才的操作就可以實現debug了.

我只是假設性的隨便添加了一個watch target,結果可以看上圖.

 

在Decoda的文件包中有使用文檔,E文的,簡明的教程.Decoda有兩種使用方式,而我只是簡單介紹了注入宿主程序的方式,沒有介紹attack

宿主進程的方式,可以去參考文檔.

 

2 復雜的方式是使用LuaEdit進行調試.LuaEdit提供了Remote debug模式,不過你在調試的時候需要在宿主機上面開啟remote debugger.

 LuaEdit提供了編程需要的文件和庫,需要按照官網文檔的方式做.

不好意思了,這個也不用翻譯了,大家都看得懂.

 

說了那么多都是在windows上面debug的方式,但是這些軟件在linux上面都不可以使用. 不知道在linux下面有沒有這樣方便

的軟件.實在不行只能自己動手了.

 

 

 

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM