Win7旗艦版
VS2012
Cocos2d-X 2.2.0
Python 2.7.5
Cpp
Cygwin 2.830
Android NDK r9b
Android SDK(adt-bundle-windows-x86-20131030.zip)
jdk(Java SE Development Kit 7u45)
Eclipse Standard 4.3.1
CDT 8.2.1 for Eclipse Kepler
ADT 22.3.0
VS2012:
去官網找旗艦版,然後再百度CDKey就好了啦
下載並安裝,需要什麼插件之類的,自己搞定,反正對於運行遊戲沒有影響
Cocos2d-X 2.2.0
去官網下該版本,然後解壓縮,這不是廢話麼
不要放在C盤裏面,否則可能會造成某些特權相關的問題
Python 2.7.5:
下載安裝,環境路徑什麼的自己留意一下就好了啦
至於如何生成新項目,自己去找一下吧
Cpp:
這裏我們使用新建的是CPP項目,Lua項目應該差不多的吧
新建項目,然後讓VS2012運行一遍看看吧
Cygwin 2.830:
去官網下載
運行後選擇從網絡下載更新,沒什麼好說的了吧
安裝地址和對象
這是下載時候的緩存路徑,會在裏面新建一個文件夾
可以備份,供以後使用
沒什麼好說的了吧
選擇從哪個地址下載,看着辦,慢的話就取消重新再來
這地址很給力的說
這樣子選擇後就會保持原有的啦,就可以專心下載需要的
不過我們還是這樣子選擇,先把默認的給裝了先吧
在默認設置下,只需選擇Devel(點擊列表中Devel,將後面的Default改爲Install),其它均爲默認狀態。(其實NDK需要的不多,主要autoconf2.1、automake1.10、binutils、gcc-core、gcc- g++、gcc4-core、gcc4-g++、gdb、pcre、pcre-devel、gawk、make )
好了,這樣子我們這次就可以只安裝自己的啦
運行cygwin,在彈出的命令行窗口輸入:cygcheck -c cygwin命令,會打印出當前cygwin的版本和運行狀態,如果status是ok的話,則cygwin運行正常。
然後依次輸入gcc –v,g++ --version,make –version,gdb –version進行測試,(注意空格和-)如果都打印出版本信息和一些描述信息,這說明cygwin安裝成功了
把 D:\cygwin\bin 配置到系統path環境變量中去
Program bash is not found in PATH
Program "sh" not found in PATH
這樣子就可以解決這個問題了啦
很愛怪的問題,不管是桌面生成的快捷方式還是菜單上得均無效
D:\cygwin\var\run\utmp -i /Cygwin-Terminal.ico -
地址問題?
D:\cygwin\Cygwin.bat -i /Cygwin-Terminal.ico -
反正我改成這樣子貌似就可以了啦
D:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -
這個地址會更好?
Android NDK r9b:
都快說到厭了啦,去官網下載
下載完解壓到D盤去
然後添加NDK_ROOT到環境變量
D:\android-ndk-r9b
其實在這裏添加主要是爲了Lua項目的移植
這裏添加了之後下面的那些添加NDK_ROOT就不需要了啦
Android SDK(adt-bundle-windows-x86-20131030.zip):
官網風景無限好啊,還是去官網下載吧
裏面一堆垃圾着實令人討厭
解壓完之後,雙擊運行SDK Manager
將會彈出
好像是因爲Android 2.2繼承了android的生成,所以推薦先把2.2給裝了
注意,如果連接不上的話,在C:\WINDOWS\system32\drivers\etc的hosts文件中,最後一行添加74.125.237.1 dl-ssl.google.com
這樣子連接上谷歌就會很快了啦
jdk(Java SE Development Kit 7u45):
去官網下載
很麻煩,每個版本的不會檢查上一個版本,就是說不可以直接覆蓋掉
所以一般地址改成D盤就算了,其它版本地址就無視了吧
裝到一半的時候,會彈出安裝jre,這時候也改成D盤即可
安裝後,配置環境變量:
新建環境變量:JAVA_HOME 值爲:D:\Program Files\Java\jdk1.7.0
新建環境變量:CLASSPATH 值爲:.;%JAVA_HOME%\lib;(注意:點號表示當前目錄,不能省略)
在系統變量Path的值的前面加入以下內容:%JAVA_HOME%\bin;(注意:這裏的分號不能省略)到這裏,JDK安裝完畢。
單擊“開始”—>“運行”—>輸入:cmd命令,在CMD窗口中輸入:java -version 出現如下界面,就表示安裝成功:
不怕麻煩的話最好分別也試一下java和javac
Eclipse Standard 4.3.1:
老規矩,去官網下(怎麼老是有人不愛去官網下載呢,真是奇葩)
下載完之後解壓到D盤去
首次運行需要設置這玩意,超煩的說
打開後
點擊Help,選擇Install New SoftWare
CDT 8.2.1 for Eclipse Kepler:
去官網下載吧,記得對應自己的Eclipse版本號,否則出事了我可不管啊
打開插件安裝界面
點擊這玩意
剛剛下載的CDT壓縮文件是不用解壓的,直接選擇
別忘了勾選上啊
點擊next開始安裝吧
轉完就重啓吧 yeah
ADT 22.3.0 :
官網提供了網址,不用下載,方法類似上面
https://dl-ssl.google.com/android/eclipse/
如果不行的話,將https改成http
重啓後會彈出告示Android SDK找不到之類的提示
如上設置即可,就是加上自己sdk的路徑
開始Android移植:
首先需要導入自己之前新建的工程
D:\Cocos2d-X\cocos2d-x-2.2.0\projects\Hello\proj.android
這是導入的路徑,根據自己新建的項目來更改
Copy projects into workspace不要選,否則的話需要手動複製某些缺少的文件到workspace,不推薦
修改Android.mk
具體要如何修改,去查看寫過的關於Android.mk的文章
可以看到這裏提示我們定義NDK_ROOT
右擊自己導入的工程,選擇Properties
路徑是自己ndk的根目錄,記住NDK_ROOT的名稱不能更改
Add to那個我暫時還沒知道有什麼區別
再看看這裏,上面的是選擇啓動的版本
下面是Library,因爲我們還沒有導入,所以是錯誤狀態
這裏也有提示
現在進行導入
D:\Cocos2d-X\cocos2d-x-2.2.0\cocos2dx\platform\android
這是路徑
導入之後就沒有這個問題了啦
我們需要新建一個安卓模擬器
這個根據需求來建吧
好了,現在基本的都搞好了
這時候選擇Run-Run as Android Application
如果沒有什麼問題的話,Cygwin應該會開始編譯(第一次運行的時候,運行過一次,沒有更改就不會重新編譯的了)
如果第一次運行沒有進行編譯,要不就是出錯,要不就是因爲NDK_ROOT沒有設置好
這是最基本的輸出信息
這是已經編譯過一遍之後的輸出信息
另外寫一下官網的做法(變流暢了?只是碰巧而已麼?使用bluestacks的時候,原本左上角會有載入什麼之類的顯示的,現在這樣子之後就貌似沒有了?):
Add this line `none /cygdrive cygdrive binary,noacl,posix=0,user 0 0` to `Cygwin\etc\fstab` file.
不知道第一行要不要刪掉好
作用不明
Path Variable `COCOS2DX`:
* Eclipse->Preferences->General->Workspace->**Linked Resources**
* Click **New** button to add a Path Variable `COCOS2DX` pointing to the root cocos2d-x directory.
作用不明,發現不寫也行,考慮到裏面有絕對路徑,所以拋棄
C/C++ Environment Variable `NDK_ROOT`:
* Eclipse->Preferences->C/C++->Build->**Environment**.
* Click **Add** button and add a new variable `NDK_ROOT` pointing to the root NDK directory.
* Only for Windows: Add new variables **CYGWIN** with value `nodosfilewarning` and **SHELLOPTS** with value `igncr`
NDK_ROOT大家都知道的啦
另外兩個可能是爲了去除之前的waring
明顯少了些warning,但是貌似沒有什麼影響?
### Running project from Command Line
$ cd cocos2d-x/samples/Cpp/TestCpp/proj.android/
$ export NDK_ROOT=/path/to/ndk
$ ./build_native.sh
$ ant debug install
表示上面的真心看不太懂啊,反正我下面的寫法就可以了啦
$ cd /cygdrive/d/Cocos2d-X/cocos2d-x-2.2.0/projects/lua/proj.android
$ export NDK_ROOT=d:/android-ndk-r9b
$ ./build_native.sh
If the last command results in sdk.dir missing error then do:
$ android list target
$ android update project -p . -t (id from step 6)
$ android update project -p cocos2d-x/cocos2dx/platform/android/java/ -t (id from step 6)
這些沒有什麼好說的了吧