網上看了很多人這方面的文章,基本都是基於r3以前的版本,因為Android NDK r4是近期發布,其中有些改變,所以將此安裝過程重新梳理。
安裝環境Windows 7 64bit (之前在Ubuntu Desktop中安裝過 android NDK 好像是r3版本,當時處於好奇,此次安裝是為了嘗試調試一個程式)
相比Ubuntu下載的安裝 Windows環境安裝還是稍微複雜些。
1. 下載android NDK r4 Windows 安裝包,解壓縮到你想放的位置,例如:d:\android
2. 安裝cygwin,1.7以上版本,一個類比的linux環境,安裝中需要選擇你要安裝的Linux相關組件,參照之前網上相關文章,安裝以下包
autoconf2.1
automake1.10
binutils
gcc-core
gcc4-core
gdb
pcre
pcre-devel
- GNU awk
如果後續有缺包,可以在繼續安裝。我把看似需要的(c/c++的)都裝了,呵呵。
安裝好後,運行cygwin,使用過linux朋友們,應該不會陌生。
3. 可以在cygwin中通過vim修改,也可以在windows安裝目錄中修改 home\<你的使用者名稱>\.bash_profile 檔案中最後添加環境變數
NDK=/cygdrive/<你的盤符>/<android ndk 目錄> 例如:NDK=/cygdrive/d/android/android-ndk-r4-windows
export NDK
其中"NDK"這個名字隨便起,因為後面要用經常使用,建議不要太長。
重啟cygwin,輸入cd $NDK進入對應目錄,就成功了。
後面不一樣的地方來了:
以前是 輸入 build/host-setup.sh。 編譯安裝NDK本地環境。
更新, r4版本後,不再需要這個句話
看看NDK doc目錄中OVERVIEW.TXT 說明
Previous releases required that you run the 'build/host-setup.sh'
script to configure your NDK. This step has been removed completely
in release 4
所以說,仔細看官方文檔很重要,呵呵,再我開始研究android後,體會更深了。
4. 現在已經可以編譯JNI目錄中的檔案了,JNI是什麼!? 這個我就不多說了,最直觀的就是android 項目中,jni檔案目錄中存的就是用c/c++寫的相關程式,需要利用NDK編譯的。
編譯很簡單,在cygwin中進入你的android項目目錄(在cygdrive這個目錄下),運行 $NDK/ndk-build
實際就是運行ndk目錄中的一個可以執行指令碼。
正常編譯後會在你的項目目錄中產生 對應的 .so檔案 並放到 libs/armeabi目錄中
嘗試編譯一下,android NDK samples中的例子檔案吧