文中大部分內容來自http://cn.quick-x.com/?p=253,綠色標記部分為修改部分。
配置編譯環境的基本步驟:
- 安裝 Visual Studio 2012
- 安裝 Java SDK
- 安裝最新的 Android ADT bundle 和 Android NDK
- 下載 quick-cocos2d-x 源代碼
- 設置環境變量
- 編譯 quick-x-player proj.win32 工程
- 設置eclipse的lua編譯環境。
- 創建新項目,並在 Android 真機上進行測試
- xplayer+eclipse調試lua
Step 1: 安裝 Visual Studio 2012
從 http://www.microsoft.com/visualstudio/ 下載 Visual Studio 2012,並進行安裝。
支持的版本:
- Visual Studio 2012
- Visual Studio Express 2012 for Windows Desktop
注意:必須使用 Windows Vista/7/8 操作系統。
Step 2: 安裝 Java SDK
從 http://www.oracle.com/technetwork/java/javase/downloads/ 下載最新版的 Java SDK (JDK, 推薦使用 32bit 版本),並進行安裝。
Step 3: 安裝最新的 Android ADT bundle 和 Android NDK
- 從 http://developer.android.com/sdk/ 下載最新的 ADT Bundle for Windows ( 推薦 32bit 版本,或者和 JDK 匹配的版本 )。
- 解壓縮 adt-bundle-windows-x86-2013????.zip 。
- 將目錄 adt-bundle-windows-x86-2013???? 改名為 android 。
- 將目錄 android\sdk 改名為 android\android-sdk-windows 。
- 從 http://developer.android.com/tools/sdk/ndk/index.html 下載 Android NDK r?
- 解壓縮 android-ndk-r?-windows-x86.zip
-
將目錄 android-ndk-r? 移動到 android\android-ndk-r?
最終的目錄結構:
<PATH_TO>\android\android-ndk-r? <PATH_TO>\android\android-sdk-windows <PATH_TO>\android\eclipse
-
運行 android\android-sdk-windows\tools\android.bat, 選中 Android SDK 2.2(如果看不到 Android SDK 2.2,請設置代理), 然后安裝需要的包。
Step 4: 下載 quick-cocos2d-x 源代碼
下載develop版本的quick,quick-cocos2d-x-develop.zip,這個版本的player增加了auto connect debugger功能,方便調試lua。
方法 1: 最快速獲得源代碼的途徑是通過 quick-cocos2d-x 官方網站上的下載頁面。這里列出了所有的穩定版本及其下載鏈接。
由於 Android SDK 和 NDK 的問題,quick-cocos2d-x 目錄的放置有一定要求:
- 必須和 Android SDK/NDK 在同一個分區
- 不能放在根目錄
- 路徑中不能包含中文和空格(所以別放桌面了)
方法 2: 使用 git 工具克隆 quick-cocos2d-x 倉庫。啟動 終端 應用程序, 運行命令:
$ git clone git://github.com/dualface/quick-cocos2d-x.git Cloning into 'quick-cocos2d-x'...
如果訪問 github.com 速度太慢,可以使用國內鏡像倉庫,網頁:https://code.csdn.net/liaoyulei01/quick-cocos2d-x
Step 5: 設置環境變量
打開 系統屬性 -> 高級 -> 環境變量:
添加下列環境變量(注意修改 <path_to>為你 quick-cocos2d-x 源代碼所在的實際路徑):
ANDROID_NDK_ROOT=<PATH_TO>\android-ndk-r8e
ANDROID_SDK_ROOT=<PATH_TO>\android-sdk-windows
QUICK_COCOS2DX_ROOT=<PATH_TO>\quick-cocos2d-x
COCOS2DX_ROOT=%QUICK_COCOS2DX_ROOT%\lib\cocos2d-x
ANDROID_HOME=%ANDROID_SDK_ROOT%
PATH=%QUICK_COCOS2DX_ROOT%\bin\win32
如果 PATH 變量已經存在,則在 PATH 變量最后添加;%QUICK_COCOS2DX_ROOT%\bin\win32。
Step 6: 編譯 quick-x-player proj.win32 工程
啟動 Visual Studio 2012,打開 \<PATH_TO>\quick-cocos2d-x\player\proj.win32\quick-x-player_2012.sln 工程。
編譯時如果提示文件找不到,請做以下檢查:
- 環境變量設置是否正確
- 設置和修改環境變量后,必須重新啟動 Visual Studio
- 工程默認的platform-tools設置的是v110xp,在win7-64下編譯不過,改成v110.
編譯完成以后,在quick-cocos2d-x-xx\player\bin\win32下生成quick-x-player.exe和quick-x-player-release.exe。(貌似這一步可以省略,因為下載的zip包里面已經有這兩個exe了)
Step 7: 創建新項目,真機運行
在dos窗口下,運行腳本
quick-cocos2d-xxx\bin\create_project.bat cn.a.b.demoGame
此時在當前目錄生成一個demoGame目錄,在demoGame下包含多個平台的項目。
在dos下,運行腳本proj.win32/build_native.bat,幾分鍾過后在libs下生成一個libGame.so,這個so就是Cocos2d的靜態鏈接庫。
現在用eclipse打開proj.win32項目,連上真機就可以調試了,不過由於沒有添加任何代碼,在真機上看到的是黑屏。
此時將samples/coinflip的scripts和res目錄拷貝到proj.android/assets目錄下,重新運行就能在真機上看到coinflip游戲了。
Step 8: eclipse LDT+quick-x-player調試lua
在eclipse的Help->eclipse market place窗口中搜索ldt,安裝lua development tools(LDT)。
安裝以后,在File->new->下可以看到lua project了,創建lua項目。選擇從已有代碼創建
然后在main.lua前加上如下代碼,以支持調試
-- for debugger local initconnection = require("debugger") initconnection('127.0.0.1', 10000 , 'luaidekey')
(上述代碼引用了debugger,但是現在scripts目錄下並沒有這個文件。下面步驟中會將這個文件加上)
在debug configuration窗口,創建一個lua attach to application類型的配置。
idekey和timeouts默認都已設置,timeouts改成60。
點擊Lua Debugger Client,在隨后的目錄選擇窗口中,選擇本lua工程的scripts目錄,操作完畢后,ldt會拷貝一個debugger.lua到Scripts目錄下。
准備工作基本完成,接下來就可以調試了。
1、在ecplise中以debug方式啟動lua,在代碼中設置斷點,等待quick-x-player的連接。
2、啟動quick-x-player-release,在file下勾選Auto connect debugger(只有develop版本的player才有這個選項)
然后open project,選擇之前項目demoGame/proj.android/assets(注意不是demoGame,不然調試的時候會報錯)。
按F5,此時eclipse就可以看到代碼運行到斷點了。