1、下載cocos2d-xhtml
http://cocos2d-x.org/projects/cocos2d-x/wiki/Downloadjava
cocos2d-x-2.1.4.zip @ June.18, 2013
咱們能夠看到最新版本的2.1.4,這個版本提供了一個用python命令來創建各平臺的項目,十分便利python
下載,解壓(建議解壓到主目錄下的)linux
2、下載pythonandroid
http://www.python.org/getit/ios
建議選擇2.7.5版本的下載c++
Python 2.7.5 Mac OS X 64-bit/32-bit x86-64/i386 Installer Python 2.7.5 Mac OS X 32-bit i386/PPC Installer
下載,安裝,而後在終端直接輸入python,若是出現版本信息則安裝成功。git
3、創建cocos2d-x項目程序員
進入終端,執行如下命令vim
cd ~/cocos2d-x-2.1.4/tools/project-creator/ python create_project.py -project game01 -package com.ookcode.game -language cpp
create_project.py要求提供3個參數(工程名:我這裏是game01,包名:我這裏是com.ookcode.game,語言:cpp | js | lua)
執行成功會顯示如下信息
proj.ios : Done! proj.android : Done! proj.win32 : Done! proj.mac : Done! proj.blackberry : Done! proj.linux : Done! proj.marmalade : Done! New project has been created in this path: /Users/ookcode/cocos2d-x-2.1.4/projects/game01 Have Fun!
進入game01目錄,你能夠看到這些項目
Classes Resources proj.android proj.ios proj.mac proj.win32 proj.blackberry proj.linux proj.marmalade
怎麼樣,全平臺都給你搭好了,並且共用一個Classes文件夾,也就是說你在一個平臺更新了代碼,全平臺都獲得了更新。
4、編輯ios項目
進入game01/proj.ios/目錄,直接雙擊打開game01.xcodeproj(別說你沒裝xcode)
而後點run就能夠跑起來了
我在這裏曾經犯了一個很2的錯誤,就是一直在cocos2dx這個目錄下run,死活跑不起來
這裏要選中game01,否則就變成一直在build cocos2dx了
這個HelloWorldScene.cpp就是你的代碼了,你能夠本身修改,不過因爲全部平臺用的都是這個,因此改了以後記得在其餘平臺也跑下
5、編輯安卓項目(重點,這個比較複雜)
1.下載ADT Bundle
http://developer.android.com/sdk/index.html
(解壓到主目錄,重命名爲adt-bundle,爲了下面寫路徑方便)
2.下載NDK(目前最新版本是:android-ndk-re8)
http://developer.android.com/tools/sdk/ndk/index.html
(解壓到主目錄)
3.爲Eclipse安裝CDT插件
打開eclipse,選擇菜單Help/Install New Software
在Work With下拉框中選擇本身eclipse的版本名,而後在插件裏選中Programming Languages,打開下拉列表
選擇C/C++ Development Tools安裝,重啓eclipse
這是你能夠新建一個c++的HelloWorld項目試一試
當你運行的時候可能會有以下錯誤:
gcc: command not found
g++: command not found
打開xcode->preferences->Downloads
你須要下載安裝Command Line Tools,安裝完成後,重啓Eclipse,而後從新運行那個c++項目,你會在Console中看到久違的HelloWorld!
4.配置全局變量
進入終端,執行如下命令
vim ~/.bash_profile
按i進行編輯,輸入如下路徑
export COCOS2DX_ROOT=/Users/ookcode/cocos2d-x-2.14/ export NDK_ROOT=/Users/ookcode/android-ndk-r8e export ANDROID_NDK_ROOT=/Users/ookcode/android-ndk-r8e export ANDROID_SDK_ROOT=/Users/ookcode/adt-bundle/sdk export PATH=$ANDROID_NDK_ROOT:$PATH export PATH=$ANDROID_SDK_ROOT:$PATH
按ESC,再輸入:wq 保存並退出(基本的vi命令要會)
******這裏是個人路徑,切記得換成你本身的*******
5.用NDK編譯android項目
進入終端,執行如下命令
cd ~/cocos2d-x-2.1.4/projects/game01/proj.android ./build_native.sh
而後就是漫長的編譯
Compile++ thumb : cocos2dcpp_shared <= main.cpp Compile++ thumb : cocos2dcpp_shared <= AppDelegate.cpp Compile++ thumb : cocos2dcpp_shared <= HelloWorldScene.cpp Compile++ thumb : cocos_extension_static <= AssetsManager.cpp Compile++ thumb : cocos_extension_static <= CCBFileLoader.cpp
………
………
當看到
Install : libcocos2dcpp.so => libs/armeabi/libcocos2dcpp.so make: Leaving directory `/Users/ookcode/cocos2d-x-2.1.4/projects/game01/proj.android'
就編譯成功了
6.導入android項目
在eclipse中右鍵,new->project
選擇Android Project from Existing Code
Browse到game01的proj.android目錄
導入進來後咱們發現有這樣的錯誤
這是因爲cocos2dx的文件沒用正確的包含進來
右鍵項目->properties->Java Build Path
在Source裏點Link Source
Browse到/cocos2d-x-2.1.4/cocos2dx/platform/android/java/src
而後隨便取個名字,肯定,剛纔的錯誤就消除了!
--------------------------------------------------------------------------------------------------
2013年7月31日更新:
能夠直接把/cocos2d-x-2.1.4/cocos2dx/platform/android/java當作一個安卓工程導入,而後都不用設置Link Source,一勞永逸!
--------------------------------------------------------------------------------------------------
7.建立AVD模擬器
注:cocos2d-x須要4.0.3以上的模擬器才能運行,真機無所謂
建立AVD是記得勾選Use Host GPU
右鍵項目->Run As -> Run Configurations-> Target
在最底部輸入
8.運行項目
右鍵項目-> Run As -> Android Application
而後選擇剛纔建立的AVD,而後你能夠去先喝杯茶(模擬器啓動那叫一個慢~
9.編輯項目
千萬別在eclipse裏面寫c++的代碼, CDT真受不了。
前面說過,全平臺的項目是共用一個classes的,因此,咱們能夠用xcode打開那個ios的項目
打開HelloWorldScene.cpp這個文件,咱們進行一些簡單的修改
找到這行代碼,咱們給他修改一個字體
CCLabelTTF* pLabel = CCLabelTTF::create("Hello World", "Arial", 24);
改爲
CCLabelTTF* pLabel = CCLabelTTF::create("Hello World", "fonts/Marker Felt.ttf", 128);
你可能會奇怪,爲何字體要這樣寫"fonts/Marker Felt.ttf"
若是是要ios支持的話直接寫Marker Felt就行,不過安卓卻不能這樣,咱們能夠看到,安卓項目的目錄下有個fonts目錄,因此得按這種寫法來得到安卓的支持
(不過我疑惑的是,ios明明沒用fonts這個目錄,它是怎麼判斷出是這個字體的)
10.運行修改過的項目
在xcode中點擊Run
發現了麼,字體改變了!
而後接着是android項目,由於修改了代碼,因此必須從新編譯一次
再次進入終端,輸入如下代碼
cd ~/cocos2d-x-2.1.4/projects/game01/proj.android ./build_native.sh
此次不會想上一次編譯同樣花那麼久,由於不會再編譯一次cocos2dx的代碼
Using prebuilt externals make: Entering directory `/Users/ookcode/cocos2d-x-2.1.4/projects/game01/proj.android' Compile++ thumb : cocos2dcpp_shared <= HelloWorldScene.cpp SharedLibrary : libcocos2dcpp.so Install : libcocos2dcpp.so => libs/armeabi/libcocos2dcpp.so make: Leaving directory `/Users/ookcode/cocos2d-x-2.1.4/projects/game01/proj.android'
出現以上代碼就表示編譯成功了
咱們再回到eclipse,右鍵項目->Run As -> Android Application
6、結束語
cocos2d-x的環境實在是很煩人,花了整整一天的時間才搭建好,期間更是碰到各類亂七八糟的錯誤,因此特意註冊個博客,就爲了把此次艱辛的環境搭建給記錄下來,也
給正在糾結的朋友們提供一些幫助。
慢慢悠悠寫了兩個小時,這是我第一次寫東西,表達的不是很清楚,還請你們見諒,有什麼問題能夠回覆給我,有什麼錯誤也請指出。
我如今也在學cocos2d-x,不知道有沒有朋友能一塊兒交流-。-(本人93年大2屌絲,技術宅,未婚,木有妹紙0.0)
暱稱:
註銷 訂閱評論
[使用Ctrl+Enter鍵快速提交]
· 谷歌爲何須要這麼多的機器人?
· 微軟或對WP和RT免費
· 科學家首次發現烏賊具備情景樣記憶能力
· 互聯網進化,將來BAT360們將消失
· CEO熱門候選人:微軟將來將成服務公司
» 更多新聞...
· 作正確的事情,等着被開除
· Stack的三種含義
· 如何寫一篇好的技術博客
· 數字證書及CA的掃盲介紹