【cocos2d-x 環境配置-Mac配置篇】


目前我配置的環境需求如下:

JDK 1.6

XCode Version 4.6 (4H127)

Cocos2d-x 2.2.0 

Android Developer 

一,下載安裝

要配置環境一次性下載准備要以下東西:

1,下載jdk,地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

2,下載ndk,地址:http://developer.android.com/tools/sdk/ndk/index.html

3, ADT + sdk ,地址:http://developer.android.com/sdk/index.html

4,下載最新的Cocos2dx,目前已經到了2.2版本了,地址:http://cocos2d-x.org/download 官網改動挺大;

ps:2.1.5以上的版本編譯工程創建都有一些差距;

5,下載xcode,我的是老版本4.6不用升級,破解了無證書的,沒必要直接老版本更新,可以直接去網上下載安裝包;

ps:破解地址也給一個吧http://blog.csdn.net/abcddtt/article/details/9074099 對於沒有證書或者真機調試新項目給別人看很有用的;

二,環境的配置安裝

1,ios 的環境cocos2d-x2.2.0版本安裝與升級

先安裝好xcode,然后解壓出cocos2d-x2.2的文件,從2.1.5以上后就沒有模板的安裝了,直接解壓后用/Users/yangshengjie/cocos2dx.2.2/cocos2d-x-2.2/tools/project-creator目錄下的create_project.py文件安裝建工程

但是如果2.1.5之前的想升級cocos2dx2.2.0版本,進行如下操作:

(1)找以前舊版本的如cocos2d-x-2.1.4的install-templates-xcode.sh拷貝到2.2的目錄下面

(2)再把/Users/yourmacname/cocos2dx.2.1.4/cocos2d-x-2.1.4/template/xcode4 整個文件夾復制到對應/cocos2dx.2.2.0/cocos2d-x-2.2.0/template/ 下面

(3)先獲取mac的root權限,命令行執行 install-templates-xcode.sh -u-f ,看到installed就升級成功了,xocde新建工程看cocos2d.cpp就是2.2版本的了;

2, android 環境安裝配置,jdk,ndk,eclipse 下載完之后整理以下目錄,然后開始配置mac下的環境變量

整理后的目錄放在users根目錄下:

打開終端配置環境變量,輸入以下命令:

vim ~/.bash_profile

按鍵i,進行插入編輯(如果輸錯d進行刪除一行)

修改以下路徑:

export PATH=$PATH:/Users/yourmacname/adtformac/sdk/tools

export PATH=$PATH:/Users/yourmacname/adtformac/sdk/platform-tools

export PATH=$PATH:/Users/yourmacname/android-ndk-r9b/

export ANDROID_NDK_ROOT=/Users/yourmacname/android-ndk-r9b/

export ANDROID_SDK_ROOT=/Users/yourmacname/adtformac/sdk

export NDK_ROOT=/Users/yourmacname/android-ndk-r9b/

復制進去

按esc,再命令輸入命令:

:wq

3,創建一個新工程

終端打開路徑 /Users/yangshengjie/cocos2dx.2.2/cocos2d-x-2.2/tools/project-creator 

用命令創建工程:

 ./create_project.py -project projectname -package com.xxx.xxxx -language cpp

替換自己的包名和工程名,回車如圖示就算建立成功了

你現在可以通過xcode打開你新建的項目工程了,工程目錄在:

/Users/yangshengjie/cocos2dx.2.2/cocos2d-x-2.2/projects/mytest

雙擊文件夾proj.ios/mytest.xcodeproj就可以打開工程,直接run就可以跑起來;

ios端配置就完成了,很簡單;

另外推薦大家一個小工具go2shell(路徑命令終端快捷的工具拖到Finder工具欄上面,一鍵就可以定位打開這個路徑的終端),這玩意兒圖標也很萌...

 

4,配置android eclipse的環境

打開eclipse,-> import目錄 /Users/yangshengjie/cocos2dx.2.2/cocos2d-x-2.2/cocos2dx/platform/android/java 

加載libcocos2d工程,因為新工程需要把他作為lib引用

(1),adt->設置->General->Workspace->Link Resources->new  對話框里面name填COCOS2DX,路徑選擇:/Users/yourmacname/cocos2dx.2.2/cocos2d-x-2.2 

如下圖:

ok

(2),adt->設置->Android->SDK location  選擇你的sdk路徑/Users/yourmacname/adtformac/sdk

如下圖:

默認的sdk自帶了一個4.4的rom, APIlevel = 19 

ok

(3),adt->設置->Android->C/C++ ->Build->Environment   Add 一個ndk路徑/Users/yourmacname/android-ndk-r9b

ok

(4),import剛才新建的工程/Users/yourmacname/cocos2dx.2.2/cocos2d-x-2.2/projects/mytest/proj.android

ok,如果上面的步湊沒什么問題,導入應該不會報錯:

ok,到這步沒有報錯的話,應該可以直接跑起來了,可以插上android真機調試以下看看如何;

點擊run->你的工程項目在eclipse Consle里面可以看到如下圖:

我們已經成功通過ndk編譯出.so文件,真機上就沒問題了;

5,編寫代碼,進行跨平台交叉編譯

以上我們已經成功完成了工程的創建以及ios,android平台都可以跑起來新建的項目了,事情還沒完,我們新寫了c++代碼,怎么交叉編譯呢?換句話說我們在win32,xcode,eclipse任何一個開發平台寫了代碼怎么同步到其他平台呢?

例:我在xcode寫代碼再同步到eclipse上去

我打開了我之前xcode創建的工程,里面編寫了一個BaseSoundControl.cpp文件,顯然這個類是用來控制聲音的,具體代碼:

#include "BaseSoundControl.h"
#include "SimpleAudioEngine.h"

BaseSoundControl::BaseSoundControl(CCString* videourl,bool repetflag)
{
    
    CocosDenshion::SimpleAudioEngine::sharedEngine()->preloadBackgroundMusic(videourl->getCString());
    
    CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic(videourl->getCString(), repetflag);
    
}

用到了CocosDenshion,win32下面如果用到聲音需要手動起添加,andriod新創建的工程也要去手動添加;

xcode ios 跑起來效果如下:

先把寫的代碼copy到對應工程里面,復制的時候注意對應目錄關系如下圖,Classes和Resources對應里面的所有東西(c++代碼和圖片,和音頻文件)都copy過來;

 

然后F5刷新我們的android工程,就會看到mytest項目中classes文件夾同步上了我們寫的c++代碼;

先別着急直接run,會報錯,因為在android建工程沒有cocos2d-x里面專處理聲音跨平台的CocosDenshion庫,手動添加它;

工程名->右鍵->new->folder

Advanced ->link to~~~ ->Varivbels ->選擇cocos2dx ->Extend->選擇 CocosDendhion ok!如下圖:

最后filsh就有了這個庫了;

還沒完事兒,點run還是會報錯,還有最重要的一步,編寫.mk文件!!!!

eclipse中直接在jni中打開Android.mk文件,做如下修改,以后寫了一個cpp就的在這里配置一個;

 

ok,所有工作完成了,可以點run了!!

再次生成.so成功,標志着跨平台編譯跑起來了!

 


免責聲明!

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



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