android 的NDK在Windwos環境搭建(一)

上一篇是android NDK在ubuntu10.04環境搭建,此次是windows的! php

NDK的Windwos環境搭建Eclipse版本是3.6以上的    html

1、下載android NDK您能夠下載NDK r4  for Windows或NDK r5  for Windows安裝包,下載地址:
地址:http://developer.android.com/sdk/ndk/index.html

2011122816360098.png 

下載後解壓縮到你的工做目錄,例如:E:\Android\tools\android-ndk-r7,結果以下圖:
android


2011122816365794.png 

Android NDK包含build、docs、samples、sources、GNUmakefile、ndk-build、ndk-gdb及readme等內容。samples下面包含幾個實例開發演示項目,第一次接觸NDK開發,建議先從示例開始。下面先看一下編譯環境配置。
2、下載Cygwin 因爲NDK開發大都涉及到C/C++在GCC環境下編譯、運行,因此在Windows環境下,須要模擬Linux模擬編譯環境,下載地址:
http://www.cygwin.com/
下載setup.exe文件。 http://cygwin.com/setup.exe
2011122816371536.png 

使用過程以下:
第一步:運行setup程序,第一步圖略,直接點擊Next進入下一步。
第二步:選擇安裝方式,第一次能夠採用Direct Connection在線下載安裝,若有現成的離線包,能夠選擇離線安裝(Install from Local Directory)。

第三步:選擇安裝目錄,好比E:\Android\cygwin,注意此目錄是指Cygwin最終的安裝目錄,不是下載文件暫存目錄。
第四步:設置本地包暫存路徑
暫存目錄默認是放到setup.exe的同級目錄下,下載後名字相似E:\Android\Softs這樣格式。
第五步:設置網絡鏈接方式
第六步:選擇下載站點地址
起初嘗試幾個看哪一個速度快就用哪一個地址(若是感受不快就點取消,再次來過)。國內的話,我感受163的速度不錯。

第七步:等待加載安裝項載入,選擇安裝項
咱們編譯NDK,在默認設置下,只需選擇Devel(點擊列表中Devel,將後面的Default改成Install,圖中箭頭所示),其它均爲默認狀態。

那四個單選按鈕是選擇下邊樹的樣式,默認就行,不用動。View默認是Category,建議改爲full顯示所有包再查,省的一些包被隱藏掉。左下角那個複選框是是否隱藏過時包,默認打鉤,不用管它就行,下邊開始下載咱們要安裝的包吧,爲了不所有下載,這裏列出了後面開發NDK用得着的包:autoconf2.一、automake1.十、binutils、gcc-core、gcc-g++、gcc4-core、gcc4-g++、gdb、pcre、pcre-devel、gawk、make共12個包

2011122816380881.png 
第八步:等待下載完成
下載完成時間決定於你選擇的安裝包數量及網絡鏈接速度,好比按照本文默認的選擇方式,可能須要4-5個小時,下載後壓縮包約830M左右,下載完成後會自動安裝到上文設置的安裝目錄。

提醒:第一次下載完成後,最好把下載的包目錄作個備份,下次安裝一樣的環境能夠直接使用離線安裝方式(第二步中選擇本地安裝)。


3、驗證Cygwin環境  
安裝完成後,運行cygwin,
第一次使用時,會建立一些用戶環境文件,
在彈出的命令行窗口輸入:cygcheck -c cygwin命令,會打印出當前cygwin的版本和運行狀態,若是status是ok的話,則cygwin運行正常。
分別輸入:
make -v
和,
gcc -v
若是檢測成功,會有make和gcc相關版本信息打印出來,
4、編譯示例  
一、設置NDK路徑。
在windows的系統環境變量中添加NDK的路徑。如:e/Andriod/tools/android-ndk-r7

二、也能夠不添加,每次打開目錄時,輸入該路徑便可。 /cygdrive/e/Andriod/tools/android-ndk-r7
2011122816402179.png 
四:用NDK來編譯程序 

    一、如今咱們用安裝好的NDK來編譯一個NDK提供的示例的程序。

咱們選擇ndk自帶的例子hello-jni,個人位於android-ndk-r7\samples\hello-jni(根據你具體的安裝位置而定),

    二、運行cygwin,輸入命令cd /cygdrive/e/android-ndk-r5/samples/hello-jni,進入到E:\android-ndk-r5\samples\hello-jni目錄。
2011122816420744.png 

三、輸入 ../ndk-build ,執行成功後,它會自動生成一個libs目錄,把編譯生成的.so文件放在裏面。(ndk-build是調用ndk的編譯程序)
錯誤:
Android NDK: Host 'awk' tool is outdated。
找到目錄E:\Android\tools\android-ndk-r7\prebuilt\windows\bin\awk.exe:刪除awk。(爲保險起見可先cp一份),從新ndk-build
成功編譯:
2011122816425754.png 

  四、此時去hello-jni的libs目錄下看有沒有生成的.so文件,若是有,你的ndk就運行正常啦!正常編譯完成後會在你的項目libs/armeabi目錄下生成對應的 .so文件。
hello-jni目錄中多了一個libs目錄。打開目錄,發現到so文件。
2011122816433756.png 
導入示例s到Android項目 ndk自帶例子是沒法直接導入的,須要使用方法以下(示例):
一、在Eclipse中新建一個工程HelloJni。在eclipse中經過 Create project from existing source 方法創建起hello-jni項目。須要注意的是在選擇API level時須要選擇1.5或更高的版本。如圖所示:
2011122816442516.png 

二、導入成功後,目錄。

三、運行該代碼
2011122816445111.png 

五:在eclipse中集成c/c++開發環境

    一、裝Eclipse的C/C++環境插件:CDT。

    首先登陸
http://www.eclipse.org/cdt/downloads.php ,找到對應你Eclipse版本的CDT插件的在線安裝地址。

2011122816455385.png 
如圖,首先是一個Eclipse C/C++ IDE Indigo SR-1的下載連接,該連接是用於下載自帶集成了CDT插件的Eclipse開發環境,若是當前計算機上沒有安裝任一版本的Eclipse,則能夠選擇下載安裝此版本Eclipse,則無需再另外安裝CDT。
果已經安裝了Eclipse Indigo,則可使用第二個鏈接「p2 software repository」在Eclipse的Help菜單下選擇Install New Software並複製如上所述連接進行在線安裝。
    二、在線安裝。而後點Help菜單,找到Install New Software菜單

    三、點擊Add按鈕,把取的地址填進去,出來插件列表後,選Select All,而後選擇下一步便可完成安裝。
勾選Group items by category,會按分類出現供安裝的組件。此處能夠不須要安裝全部的組件,推薦勾選CDT Main Features分類並勾選CDT Optional Features下的「C/C++ Development Platform」、「C/C++ DSF GDB Debugger Integration」、「C/C++ GCC Cross Compiler Support」、「C/C++ GNU Toolchain Build Support」、「C/C++ GNU Toolchain Debug Support」、「Eclipse Debugger for C/C++」、「Miscellaneous C/C++ Utilities」這些組件,其餘組件能夠在須要用的的時候再進行安裝.

三、離線安裝
若是在線安裝的方法因爲網絡緣由或者其餘緣由不可以成功完成,則能夠經過下載離線安裝包的方式進行安裝,首先須要經過如圖13-10中最下方的連接下載CDT安裝包,例如目前最新的8.0.1版本,下載到本地後,在如圖13-11所示的界面中點擊地址欄右方的Add…按鈕,而後點擊Archive按鈕並定位到剛下載的cdt-master-8.0.1.zip壓縮包,再進行安裝便可。

四、安裝完成後,在eclispe中右擊新建一個項目,若是出現了c/c++項目,則代表你的CDT插件安裝成功啦!

2011122816463516.png 

6、使用Sequoyah插件來配置
一、Sequoyah插件的官方下載點爲http://www.eclipse.org/sequoyah/downloads/,在該網頁上一樣提供了用於在線安裝的update site地址以及安裝包的下載地址,須要注意的是在安裝界面要確認Group items by category複選框處於未選中狀態,不然可能出現列表爲空(There are no categorized items)的狀況。所有勾選列出的安裝包並完成安裝。
http://download.eclipse.org/sequoyah/updates/2.0/

2011122816545915.png 

Sequoyah安裝完成後,
添加ndk路徑。
在windows-》preferences。

2011122817103631.png 


右鍵點擊任意的 Android Project會發如今Android Tools中多出了一個「Add Native Support… 」選項

2011122816573089.png 

Add Native Support…點擊後會彈出一個簡單的設置界面。
2011122817131068.png 

JNI編譯環境配置

對於jni項目,須要添加c編譯以及依賴庫。
右擊項目-》Properties。
編譯設置:
在彈出界面中選擇c/c++Build。在builder setting選項卡的build command輸入 「bash <ndk路徑>/ndk-build" 。以下圖
2011122822250852.jpg 
依賴庫
 選擇Gennera-》paths and。。。-》includes選項卡,選擇GNU c。添加依賴路徑
\android-ndk-r7\platforms\android-8\arch-arm\usr\include

2011122822263449.jpg 


下篇:另一種windows風格的  windows上搭建NDK環境(二)
相關文章
相關標籤/搜索