cocos2dx 2.2.2 的Android交叉編譯問題匯總

1. cygwin編譯cocos2d-x項目工程時,無法創建普通文件,如圖:

解決方法:

修改build_native.sh

該文件在E:\cocos2dx\template\multi-platfZ喎?/kf/ware/vc/” target=”_blank” class=”keylink”>vcm0tY3BwXHByb2ouYW5kcm9pZMS/wrzW0KOs0vLOqtTa1rTQ0GJ1aWxkX25hdGl2ZS5zaLXEyrG68qOsu+Gz9s/WtcTIqM/etcTOyszio6zL+dLU1NrV4rj2vcWxvtbQo6zU9rzTwcvIqM/eyejWw6OswLS94r721eK49s7KzOKhozwvcD48cD4gICAgICDU2rXaODfQ0Lrzw+ajrNKyvs3Kx7i01sbXytS0tcS688Pm1Pa808/Cw+bSu9DQLrzTyOujumNobW9kIDY2NiAtUiA=”$APP_ANDROID_ROOT”/assets


2. cocos2d-x編譯Android項目,與之前版本略有不同。

若遇見提示找不到bash命令什麼的?
解決方法:

在將我們的項目導入eclipse之前,我們還需要將cocos2d-x-2.2.2\cocos2dx\platform\android\java\src下的org文件夾拷貝至我們的項目中,也就是cocos2d-x-2.2.2\projects\xxx\proj.android\src下(xxx為項目名),由於我們之前創建項目時定的android包名前面也是org,所以會有覆蓋選項,大傢請選擇合並覆蓋即可

(那是不是每次編譯安卓項目是都要復制這個包過來呢?其實是不用的,這個放在文章的末尾來討論)

接著,回到eclipse環境,導入項目

註意在選擇路徑時寫到HelloWorld文件夾下即可

導入工程後,在工程HelloWorld上點選右鍵,選擇Properties

選擇builders,點擊New

選擇program

然後在接下來的界面中的

name欄輸入:Native_Builder

Location欄輸入:C:\cygwin64\bin\bash.exe

Arguments欄輸入:–login -c “cd /cygdrive/d/study/android/IDE/android-ndk-r9b && make APP=HelloWorld”

以上為一行

Arguments欄中,login前有兩個”-“符號,中間的目錄設置參考前面教程中對NDK_ROOT的路徑設定,後面的HelloWorld為創建的工程名,這個根據自己創建的工程名設定。(提示:如果不是按照默認路徑安裝的,請選擇Browse File System,找到相關的路徑)

選擇OK,選中Native_Builder,並將其調到最上面

然後選擇C/C++ Build->Environment->Add

接下來在Name欄輸入path,在Value欄輸入C:\cygwin64\bin

然後在Java Build Path裡面選擇Libraries欄,將Android Dependencies以及Android Private Libraries兩個library刪掉

(說明一下,以上我們是將cygwin的編譯環境合並到瞭Eclipse裡,Eclipse利用cygwin並調用cygwin的bash以及make,通過NDK來編譯我們的Android程序,所以每次導入新的工程都要將上述步驟重新配置一下,這點非常重要,如果配置不正確,會導致很多莫名其妙的報錯,最典型的錯誤就是提示找不到bash命令什麼的~~~~)

好瞭,現在我們可以生成APK文件瞭,在主界面選中自己的工程,然後在命令條上選擇Run->Run as->Android Application

如果以上步驟都按照教程設定的話,就能夠生成APK瞭,APK存放在proj.android->bin文件夾下,快將APK裝在自己的真機上進行測試吧!!!!!

以上編譯環境就配置結束瞭。

3.eclipse編譯項目時,出現 “The connection to adb is down, and a severe error has occured.”

Try below steps:

  1. Close the Eclipse if running
  2. Go to the Android SDK platform-tools directory in Command Prompt
  3. type adb kill-server
  4. then type adb start-server
  5. No error message is thrown while starting ADB server, then adb is started successfully.
  6. Now you can start Eclipse again.
    如圖:

    引用博文:https://blog.csdn.net/sttyytw/article/details/17005263

發佈留言