cocos2d火了一段時間了
這個引擎開發手機遊戲很不錯
自己也要開始學一下
花了幾天時間搭建環境
感覺還是挺麻煩的
寫下來總結一下
這一篇的内容詳細講解了如何搭建環境,并編譯cocos2d-x自帶的HelloCpp工程,最後得到apk
1.開發環境準備
winxp
cocos2d-x-2.2.1
cygwin
android SDK(附帶eclipse)
android-ndk-r9b
下面我們來各個擊破!
1.cocos2d-x-2.2.1
這個沒什麼好說的,目前最新的版本
下載下傳位址http://www.cocos2d-x.org/download
2.cygwin
cygwin可以在windows上運作.sh腳本檔案
在編譯安卓平台的apk時需要使用.sh檔案,是以需要裝一個cygwin
下載下傳位址http://www.cygwin.com/
下載下傳完後還需要安裝一堆東西
步驟如下
第一步:運作setup.exe程式,直接點選Next進入下一步。
第二步:選擇安裝方式。第一次可以采用Direct Connection線上下載下傳安裝,如有現成的離線包,可以選擇離線安裝(Install from Local Directory)。
第三步:選擇安裝目錄。比如D:\Java\Cygwin,注意此目錄是指Cygwin最終的安裝目錄,不是下載下傳檔案暫存目錄。
第四步:設定本地包暫存路徑。暫存目錄預設是放到setup.exe的同級目錄下,建議放到指定的檔案夾,如D:\Cygwin_install_file。安裝完成後把這個檔案夾打包備份,以後再配置時不用重新下載下傳。
第五步:設定網絡連接配接方式。這個目前河蟹沒爬過來,選第一個即可。
第六步:選擇下載下傳站點位址。據說國内163站點的速度不錯,我也是用的這個。
第七步:等待加載安裝項載入,選擇安裝項。點選Devel-Default,使之變成Devel-Install,展開後可以看到其下的子項被選中了(網上多數教程都說選中某12個包,找起來太坑爹了,直接全下載下傳了吧,全選多了150M左右)。此界面其他設定都不用動。

第八步:等待下載下傳完成。下載下傳完成時間決定于你選擇的安裝包數量及網絡連接配接速度,安裝我安裝的版本,約983M,下載下傳完成後會自動安裝到上文設定的安裝目錄,安裝也要時間的,總時間較長,去吃個飯沒啥問題。
提醒:第四步的備份建議,盡量去做。如果有備份,第二步中選擇離線安裝。
驗證:
運作安裝目錄下的“Cygwin.bat”,第一次運作時,它會自動建立使用者資訊,使用者資訊存放在“.\Cygwin\home”中。
在運作“Cygwin.bat”打開的指令行視窗輸入:“cygcheck -c cygwin”指令,會列印出目前Cygwin的版本和運作狀态,如果status是ok的話,則cygwin運作正常。
分别輸入:“make –v”和,“gcc –v”指令如果檢測成功,會有make和gcc相關版本資訊列印出來。
這一段文字有點多,但照此一步一步來應該是不會有任何問題!
參考[1]http://www.cnblogs.com/baronzhao/archive/2012/07/10/2585181.html
注意該文中配置NDK的部分并不适合cocos2d-x!
下文我會提到環境變量的配置
3.Android SDK
下載下傳位址
http://developer.android.com/sdk/index.html
裡面自帶eclipse也是需要用到的
下面講一下如何配置eclipse
第一步 安裝CDT
運作eclipse --> Help --> Install New Software...
點選Work with右邊的下拉框選擇Juno
在下拉框中選擇Programming Languages --> C/C++ Development Tools
這就是傳說中的CDT,把它安了
第二步 配置Windows環境變量
右擊我的電腦 --> 進階系統設定 -->環境變量
進去你會看到 變量PATH
修改它的值,把cygwin/bin目錄也整進去
如圖,加前面後面都一樣
windows環境變量配置這一處就夠了
第三步 修改cygwin
Add this line `none /cygdrive cygdrive binary,noacl,posix=0,user 0 0` to `Cygwin\etc\fstab` file.
翻譯一下,就是在cygwin安裝目錄安這個路徑Cygwin\etc\fstab找到fstab這個檔案
打開這個檔案在後面加一行none /cygdrive cygdrive binary,noacl,posix=0,user 0 0
第四步 配置eclipse
打開eclipse
Window->Preferences->General->Workspace->Linked Resouces
New一條記錄Name為COCOS2DX,Value就是Cocos2D-x的目錄
如圖
第五步 eclipse中C++環境變量配置
還是在eclipse中
Window->Preferences->C/C++->Build->**Environment**.
* Click **Add** button and add a new variable `NDK_ROOT` pointing to the root NDK directory.
* Add new variables **CYGWIN** with value `nodosfilewarning`and **SHELLOPTS** with value `igncr`
懶得寫了,一共加了這三個環境變量,一個是路徑兩個是值,如圖所示
第六步 添加libcocos2dx工程
1. File->New->Project->Android Project From Existing Code.
2. Click **Browse** button and open `cocos2d-x/cocos2dx/platform/android/java` directory.
3. Click **Finish** to add project.
如圖
ADT eclipse 的配置就是這些,主要是配置eclipse
以及cygwin還有windows環境變量
個人覺得這是本文最銷魂的部分,自己整了好久
這部分參考[2]了cocos2d-x示例程式中的readme.md檔案
cocos2d-x-2.2.1\samples\Cpp\HelloCpp\proj.android\README.md
寫的很詳細
4.Android NDK
NDK非常簡單下載下傳解壓就行了,沒什麼可說的.下載下傳位址
http://developer.android.com/tools/sdk/ndk/index.html
2.編譯生成HelloCpp.apk
OK 經過了漫長的準備,下面我們來編譯程式
前戲做好之後後面就剩水到渠成
1. File->New->Project->Android Project From Existing Code
2. **Browse** to your project directory. eg: `cocos2d-x/cocos2dx/samples/Cpp/HelloCpp/proj.android/`
3. Add the project
4. Click **Run** or **Debug** to compile C++ followed by Java and to run on connected device or emulator.
一共就四步,和我們剛才添加libcocos2dx工程很相似
找到你要添加的示例工程
加進來之後就開始自動編譯了
右鍵點選工程選擇
Run As --> Android Application
就可以生成APK
在模拟器上有可能跑不了,沒關系不管它
有事會在Run之前就報錯 安卓版本錯誤之類的
把eclipse關了再開就好了 = =
生成的APK在哪?
如果一切正常,你可以在這個地方找到它
cocos2d-x-2.2.1\samples\Cpp\HelloCpp\proj.android\bin
Cocos2D-x号稱一份代碼到處運作
跨平台跨的風生水起
但同時感覺編譯難度對菜鳥來講也着實不小
僅僅開發環境就要下載下傳幾個G
萬事開頭難,好在Cocos2D-x異常火熱,網絡上有衆多教程
使我們遇到問題時不至太無助
----------------------------------
----------------------------------
At Cocos2d-x3.5
相比原來的操作,多了以下幾步
1.ANT安裝
2.補充LOCAL_SRC_FILES(一開始隻有main.cpp和AppDelegate.cpp , 無論2.x還是3.x都需要把要編的填好)
LOCAL_SRC_FILES := hellocpp/main.cpp \
../../Classes/AppDelegate.cpp \
../../Classes/ClippingSprite.cpp \
../../Classes/ClippingTest.cpp \
../../Classes/GLCubeVAO.cpp \
../../Classes/GLGray.cpp \
../../Classes/GLQuadVAO.cpp \
../../Classes/GLTextureTest.cpp \
../../Classes/GLTextureVAO.cpp \
../../Classes/GLTriangle.cpp \
../../Classes/GLTriangleVAO.cpp \
../../Classes/UVSprite.cpp \
../../Classes/UVSpriteTest.cpp
3.在工程目錄下運作cmd運作以下代碼編譯生成apk
cocos compile -p android
----------------------------------
參考資料
[1].http://www.cnblogs.com/baronzhao/archive/2012/07/10/2585181.html
[2].cocos2d-x-2.2.1\samples\Cpp\HelloCpp\proj.android\README.md
轉載于:https://www.cnblogs.com/billyrun/articles/cocos2dpart1.html