cocos2d-x問題匯總

來源:互聯網
上載者:User
  • 在cygwin控制台運行cocos2d-x產生的項目中的build_native.sh時,報錯:please define NDK_ROOT.

這個問題是因為,沒有配置環境變數,需要做的事情是:

1. 複製/etc/defaults/etc/skel/.bash_profile檔案到/home/使用者名稱/目錄下。(特別注意:如果cygwin安裝後/home內建了.bash_profile,也需要複製。如果使用原來的設定檔,將導致export :command not found,這是一個很奇怪的問題,export作為內建命令居然找不到,不知道是不是cygwin1.7.17-1的一個bug)。

2. 添加命令到.bash_profile檔案中:

#ndk-rootNDK_ROOT=/cygdrive/d/WORKBENCH/android-ndk-r8cexport NDK_ROOT

~/.bash_profile:每個使用者都可使用該檔案輸入專用於自己使用的shell資訊,當使用者登入時,該檔案僅僅執行一次!預設情況下,他設定一些環境變數,執行使用者的.bashrc檔案.

3. 產生的項目必須在cocos2d-x的根目錄不能被更改,因為build_native.sh指令碼中有對COCOS2DX_ROOT="$DIR/../.."的設定。

4. 產生完之後就可以匯入到eclipse中了。

  • Are you sure your NDK_MODULE_PATH variable is properly defined

Android.mk引用了一個模組,cocos2dx模組,而NDK沒有找到它,所以報了這個錯,之前的版本是直接包含cocos2dx模組的Android.mk的,所以不會報錯而這裡使用了import,我們也可以使用之前版本的方法來包含它,但貌似import比之前的方法要更好一些錯誤資訊提示我們,可以通過設定NDK_MODULE_PATH環境變數,這裡很有可能設定錯誤。

這裡設定:D:\development\cocos2d-2.0-x-2.0.3;D:\development\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\android\prebuilt

  • make: No rule to make target `/cygdrive/c/cocos2d-x/AppTest/proj.android/../../cocos2dx/CCConfiguration.cpp', needed by `obj/local/armeabi/objs-debug/cocos2dx_static/CCConfiguration.o'. Stop.

You should do a Project->Clean before you build. When you try and build without doing this, it causes that error. I found this solution on

http://gameit.ro/2012/01/creating-an-iphone-and-android-cocos2d-x-hybrid-project-updated/. I didn't look to see if there were any other tips/tricks to only doing partial builds, but hopefully it has something.

  • Cocos2dxActivity cannot be resolved to a type

build_native.sh運行成功後,將項目匯入到eclipse中後會出現這個問題,事實上在項目中有一個project.properties檔案其中有這麼一行配置資訊:

android.library.reference.1=../../cocos2dx/platform/android/java

它的意思是將此專案檔的上上級檔案夾(也就是cocos2d-x引擎的根目錄)的cocos2dx/platform/android/java檔案夾下的工程作為匯入工程的引用,從../../這個路徑可以看出兩點:

1. 產生的項目不能移動到其他目錄下,只能在cocos2dx引擎的根目錄。

2. 匯入到eclipse的時候,不能選擇Copy project into workspace這個選項。

但是這樣做了,還是會出現這個問題,具體原因我也不知道,但是project.properties中的android.library.reference.1屬性官方是推薦在ubuntu下實現。

那我們要怎麼做呢?

其實很簡單,兩種做法:

1. 只需要將cocos2d-x引擎的根目錄的cocos2dx/platform/android/java/src檔案夾下檔案夾全部複製到項目的src包下即可。

2. 也可以匯入cocos2dx/platform/android/java這個工程產生一個jar檔案添加到項目的libs檔案夾下即可。

這兩種方法都會在最終產生apk時將依賴複製到其中的。

  • TODO 持續更新

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.