日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

(三) 搭建cocos2d-x-android环境 Windows XP3 + Eclipse + NDKR7(或ndkr7b)+COCOS2DX(没有用到cygwin和minigw)

發布時間:2023/12/14 windows 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (三) 搭建cocos2d-x-android环境 Windows XP3 + Eclipse + NDKR7(或ndkr7b)+COCOS2DX(没有用到cygwin和minigw) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載請注明出處:http://blog.csdn.net/maojudong/article/details/7261986


2012-12-26本文更新,更新內容請移步到文章的最后


版本:

Windows XP3

JDK1.6

Eclipse 3.7.1 (需要C++插件CDT)

ADT 16.0.1

NDK7 (或是NDKR7B)

?

cocos2d-1.0.1-x-0.11.0.zip

?


?

?

注意:本教程沒有用到minigw +msys,也沒有用到cygwin ,如果用到的是NDK R6B 或是以前的版本,則需要安裝cygwin(或是minigw + msys)

?

?

前提條件:假設已經成功安裝了JDK + Eclipse + CDT + ADT

?

下面講解如何在Eclipse中配置NDK ,運行cocos2d-x 自帶的 test 工程

?

目錄:

Step1. 下載 android-ndk-r7-windows.zip并解壓

Step2. 下載cocos2d-x,并解壓

Step3. ?Eclipse導入cocos2d-x?? test項目

Step4. ?Eclipse中配置NDK編譯環境

Step5. 編譯Android 項目

?

?

?

?

安裝步驟:

Step1. 下載 android-ndk-r7-windows.zip并解壓

?

下載地址:

http://dl.google.com/android/ndk/android-ndk-r7-windows.zip

?

下載完成后,將其解壓到電腦的任何目錄中,例如:



Step2. 下載cocos2d-x,并解壓

?

下載地址:

http://cocos2d-x.googlecode.com/files/cocos2d-1.0.1-x-0.11.0.Zip

?

下載完成后,將其解壓到電腦的任何目錄中,例如:



Step3. Eclipse導入cocos2d-x? ?test項目

?

打開Eclipse

依次點擊File –? New – Project… AndroidProject

?

選擇“Create Project ?from existing? Source”

如下圖所示,找到test.android? 目錄



點擊Next




選擇Android 2.1版本,這里直接點擊Next ,或是Finish就創建完成了



Step 4. Eclipse中 配置NDK編譯環境

?

首先選擇TestDemos項目,然后選擇菜單中的Project – Properties


選擇Bilders – New -- Program



打開后,進行如下的設置:

?

Location:一定要選擇ndk-build.cmd 命令

Working Directory:選擇TestDemo




注意:這里如果是 0.13 之后的版本,請不要用ndk-build.cmd 文件,請用 我寫的build_android_ndk_tests.bat (可以到我下面指定的地點下載)


下面選擇Refresh ?,配置如下:



越過Envirment ,直接點擊Build Options,配置如下圖所示:




設置完成后,點擊OK

?

Eclipse 會自動的進行編譯,耐心等待一會,下面是Eclipse開始自動進行編譯的過程

(注意編譯過程中有個小問題)



編譯過程中的問題:




解決方法:

將android-ndk-r7\sources\cxx-stl\gnu-libstdc++\libs\armeabi\libgnustl_static.a? 文件手動的copy到cocos2d-1.0.1-x-0.11.0\tests\test.android\obj\local\armeabi目錄下



以上問題其實是Google NDK R7版本的bug,會在下一版本中更改( NDKR7B版本已經更改了這個bug,所以在NDKR7B上的話就不需要這一步了 )

http://code.google.com/p/android/issues/detail?id=22268




copy過去后執行下Project –-clean 動作,系統又會自動的進行編譯了,等待一點時間后,庫文件就會編譯完成



?

至此,cocos2d-x庫文件就編譯完成了

?

?看到網友的反饋,說是找不到assets資源或是黑屏現象


原因是:android下的assets目錄沒有任何的資源文件,所以需要我們手動的將cocos2d-1.0.1-x-0.11.0\tests\Res ?下的資源 復制到 ?cocos2d-1.0.1-x-0.11.0\tests\test.android\assets ?目錄中


復制完成后,還需要刪除Images\test_image_rgba4444.pvr.gz ? 文件

?

Step5. 編譯Android 項目

連接Android手機

依次點擊? Run as…Android Application

?

下面是我的小米手機的運行截圖





說明:本配置過程沒有用到Cygwin或是 minigw + msys,完全用的是NDK自帶的編譯器


?






-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


2012-04-17更新:

cocos2d-x 0.13版本有些變動,需要用我改寫的 ndk-build.cmd ?文件進行編譯且方法有2種,直接用NKD,脫離Eclipse編譯庫,第2種還是用Eclipse 輔助編譯庫


批處理下載地址(內有使用說明)


http://download.csdn.net/detail/maojudong/4233381

脫離繁重的Cygwin.NDK編譯脫離Cygwin


1. 請將文件放到cocos2d-1.0.1-x-0.13.0-beta目錄下面
2. 打開build_android_ndk_tests.bat 文件 修改set NDK_ROOT=D:\Work7\android-ndk-r7c到你的NDK實際路徑即可
3. jni/Application.mk ?文件中加入APP_PLATFORM :=android-5 ??
4. 在jni目錄中添加雙擊此批處理即可編譯庫文件

注1:0.13版本的cocosw2d-x 搭配 Eclipse 也可以使用這個批處理,不要使用NDK自帶的ndk-build.cmd
注2:此批處理可以脫離Eclipse,只用NDK自帶的編譯器即可,這里只用來編譯庫,如果要打包到APK還是需要Eclipse的,將剛剛編譯的庫導入即可

上面講解了兩種方法,自行選擇

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
build_android_ndk.bat ?需要在開始 --> 運行 ?CMD 后 運行的批處理
方法有2:

方法1: 運行build_android_ndk.bat -C tests/test.android/jni
方法2:?
#cd tests/test.android/jni
#..\..\..\build_android_ndk.bat ?

效果是一樣的

0.11 0.12 0.13 版本都測試通過


脫離繁重的Cygwin(但是使用cocoss2d-x下的create-android-project.bat創建還是需要Cygwin,你可以嘗試更改這個文件,讓其不依賴Cygwin,我相信能夠做到,只是時間問題 ,呵呵)




-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

2012-10-21更新:

時代在進步,蘋果發布了IOS6和iphone5,不知道蘋果過些天的iPad mini 怎么樣,cocos2dx也更新到2.0.3 ?,社區也在不斷的進步,由于這一段時間來工作特別忙,cocos2dx的日志有就沒有更新了,今天到社區下載了最新的2dx版本進行了簡單的測試,還好基本都通過


XP32位系統 + JDK1.6 +?

NDKR8b + 2dx (0.11/0.12/.13/2.0/2.0.1/2.0.2/2.0.3) 測試通過

NDKR8 + 2dx (0.11/0.12/.13/2.0/2.0.1/2.0.2/2.0.3) ??測試通過


全部編譯通過,沒有出現網友說的問題

說下注意點:
1. ?java編譯器使用1.6.x (不建議用1.5.x/1.7.x)

2. ?有些安裝了cygwin的,請暫時從PATH中屏蔽掉關于cygwin的內容

3. ?jni目錄中要有Application.mk文件,且其中一定要有APP_PLATFORM :=android-5 (2dx 的 2.0.x系列至少為android-5, ? ? ? ? 1.x至少為android-4)Eclipse編譯則不需要這一步,不過建議還是寫上好些


4. ?2dx的0.10版本,ndk_build.cmd 不能完成編譯,需要安裝cygwin才能編譯(或者linux/macos 編譯),更早期的版本就沒有測試了,相信做項目也很少有人用0.10以前的版本了


5. ?Eclipse編譯環境中?2.0.3/2.0.2 /2.0.1 需要先導入\cocos2dx\platform\android\java項目,然后用Eclipse編譯出一個 jar文件,最后將這個jar文件導入到 tests 項目中的libs就可完成編譯(應一個網友的要求才這么說的,感謝他,是我的表述不清楚)


2.0.2 /2.0.1 中\cocos2dx\platform\android\java導入后,源代碼不是src目錄,卻是src_common 目錄,所以可以修改.classpath ? 文件,或是更改src_common到src是最簡單的方法


6. 不要用模擬器進行調試,模擬器的速度慢,導致加載時間長,最后黑屏,時間長了,就導致ANR(應用程序無響應),建議買個android 平板或是手機吧(現在很便宜,299元錢的android平板到處都有賣(我的公司就有賣),1000元錢可以買到雙核甚至4核的手機了)

如果非要用模擬器進行調試,請將AVD模擬器中添加 GPU emulation 屬性,并將值設置為yes就可以了

經過2個小時的測試發現 只有4.0.3 和4.1.2 兩個版本的模擬器顯示正常,且模擬器需要開啟GPU emulation 功能。

我的測試平臺:

2dx 2.0.3 版本+ MAC 10.8.2 + jdk1.6 + eclipse3.7.2?


模擬器開啟GPU功能?

2.2 ??模擬器很卡,且異常退出,無法操作 ? ? ? ? ? 結論:不通過,不能用于調試2dx ? ? ?

2.3.1 ?模擬器很卡,且異常退出,無法操作 ? ? ? ? 結論:不通過,不能用于調試2dx ? ? ?

2.3.3 ??模擬器很卡,且異常退出,無法操作 ? ? ? ?結論:不通過,不能用于調試2dx ? ?

3.X ? ? ?未測試

4.0 ? ? ?模擬器不能開啟,,且異常退出,無法操作 ? ? ? ?結論:不通過,不能用于調試2dx ? ?

4.0.3 ? ??2dx可以運行,可以調試

4.1.2 ? ? 2dx運行正常,可以調試


模擬器未開啟GPU功能?

2.2 ? ? ? 黑屏 ? ? ? ? ? ?結論:不通過,不能用于調試2dx ? ? ?

2.3.1 ? ?異常退出 ? ??結論:不通過,不能用于調試2dx

2.3.3 ? ?異常退出 ? ??結論:不通過,不能用于調試2dx

3.X ? ? ?未測試

4.0 ? ? ??異常退出 ? ??結論:不通過,不能用于調試2dx?

4.0.3 ? ?異常退出 ? ??結論:不通過,不能用于調試2dx

4.1.2 ? ?異常退出 ? ??結論:不通過,不能用于調試2dx


2dx中的論壇也有討論這個

http://cocos2d-x.org/boards/6/topics/12563

http://www.cocos2d-x.org/boards/6/topics/12563?r=19274#message-19274

http://stackoverflow.com/questions/13702538/cocos2d-x-v-2-0-4-fatal-exception-glthread-when-run-on-android-emulator

這位兄弟的文章也不錯

http://www.raywenderlich.com/12065/how-to-create-a-simple-android-game

原因是?

Android 4.0.3 r2 以上的版本 才 增加GPU支持和CPU加速


Android4.2模擬器 要添加一行代碼

Cocos2dxActivity.java

將代碼 gLSurfaceView.setEGLConfigChooser(8 , 8, 8, 8, 16, 0);? 添加到 gLSurfaceView.setCocos2dxRenderer(new Cocos2dxRenderer());的前面即可

祝你好運!




-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

2012-12-26更新:

世界末日沒有到來,生活還是要繼續,勤奮的2dx社區和2dx開發者發布了新的版本,連google也發布了NDKR8C/NDKR8D (R8D支持gcc4.7了,高興中...),之前我一直認為需要用一個批處理,其實適當的編寫配置文件,可以拋開我的bat批處理,下面簡單的介紹一下


Eclipse + NDK的編譯方法


方法1:在Application.mk 下加入如下代碼(根據實際路徑進行修改)
路徑中不能有空格,根據自己的實際路徑進行編寫
NDK_MODULE_PATH:=D:\work7\cocos2d-2.1beta3-x-2.1.0; \

D:\work7\cocos2d-2.1beta3-x-2.1.0/cocos2dx/platform/third_party/android/prebuilt \

?

注意NDK_MODULE_PATH 路徑分割符號是分號 “;” ,Linux 或者OS X 系統請更改為冒號 “:”


然后Eclipse中導入NDK路徑中的?ndk-build.cmd 文件,具體請參看文章的截圖

方法2:在Eclipse中
Edit Configuration中的 參數Arguments:中加入參數 根據自己的實際路徑進行編寫
NDK_MODULE_PATH:=D:\work7\cocos2d-2.1beta3-x-2.1.0;D:\work7\cocos2d-2.1beta3-x-2.1.0/cocos2dx/platform/third_party/android/prebuilt ? -j8

注意NDK_MODULE_PATH 路徑分割符號是分號 “;” ,Linux 或者OS X 系統請更改為冒號 “:”
NDK_MODULE_PATH:= ?或者用NDK_MODULE_PATH = 即等號前面的 冒號 ":" 可有可無

其中-j8 表示開啟的編譯線程數量,請根據自己的CPU核心數進行更改,如我電腦是的8核心CPU所以是 -j8

?

然后導入NDK路徑中的?ndk-build.cmd 文件,?具體請參看文章的截圖

?


下面的方法3和方法4就是我的老式方法,讀者可以優先選用上面的方法1和方法2

方法3:

Eclipse中 直接導入一個自己寫的批處理文件

build_android_ndk_tests2.1.0.bat ?這里不指定編譯的目錄

?

方法4:

先用build_android_ndk_tests2.1.0.bat 編譯出來一個jni庫文件,然后在Eclipse中

編譯帶有libs目錄庫文件就可以了(圖片等資源還是需要自己copy到指定的目錄),編譯出一個apk文件

?




總結

以上是生活随笔為你收集整理的(三) 搭建cocos2d-x-android环境 Windows XP3 + Eclipse + NDKR7(或ndkr7b)+COCOS2DX(没有用到cygwin和minigw)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。