- Android嵌入式系統(tǒng)程序開發(fā):基于Cortex-A8(第2版)
- 胡文 金雪松 陳銘
- 2058字
- 2018-12-31 20:37:10
1.4 搭建NDK開發(fā)環(huán)境
本節(jié)將詳細介紹如何在Windows以及Linux系統(tǒng)中搭建Android NDK開發(fā)環(huán)境。
1.4.1 NDK開發(fā)環(huán)境與安裝目錄
Android NDK開發(fā)環(huán)境使用的軟件如圖1-55所示。

圖1-55 Android NDK開發(fā)環(huán)境所使用的軟件
本書中NDK開發(fā)環(huán)境中軟件的安裝目錄如圖1-56所示。

圖1-56 Android NDK開發(fā)環(huán)境中軟件的安裝目錄
1.4.2 系統(tǒng)和軟件需求
首先了解所需要的系統(tǒng)及軟件要求。Google公司官方推薦的系統(tǒng)及軟件要求如下。
·SDK:要求Android SDK 1.5或1.5以上版本,本書使用2.1版本。
·NDK:要求NDK R3或R3以上版本,本書使用R6B版本。
NDK開發(fā)既支持Windows平臺,也支持Linux平臺,只需下載相應平臺的開發(fā)軟件即可。下面將具體介紹Windows和Linux平臺下NDK環(huán)境的搭建過程。
NDK R6B版本的下載地址為http://developer.android.com/sdk/ndk/index.html,如圖1-57所示。
·Windows平臺下NDK文件名為android-ndk-r6b-windows.zip。
·Linux平臺下NDK文件名為android-ndk-r6b-linux-x86.tar.bz2。

圖1-57 NDK R6B版本列表
1.4.3 Windows平臺NDK環(huán)境搭建
1.安裝Cygwin
1)因為NDK編譯需要用到Cygwin中的make和gcc,所以需要下載安裝Cygwin軟件。訪問www.cygwin.com網站,如圖1-58所示。

圖1-58 訪問Cygwin網站
點擊setup.exe超鏈接,下載Cygwin。
2)下載完成后,雙擊下載的setup.exe安裝程序,進入安裝界面,如圖1-59所示。
3)點擊圖1-59中的“下一步”按鈕,進入圖1-60所示界面。

圖1-59 安裝Cygwin

圖1-60 選擇安裝方式
注意:圖1-60中的三個選項分別代表三種安裝方式,第一項“Install from Internet”是在沒有本地安裝程序包的情況下,通過網絡在線安裝,所以必須有網絡的支持;第二項“Download Without Installing”是通過網絡直接下載安裝程序包,但是不進行安裝過程,這項也需要網絡的支持;第三項“Install from Local Directory”是直接通過本地安裝程序包進行安裝,所以在安裝前先要通過第二項下載好安裝程序包。
由于安裝程序包比較大,安裝過程較長,所以最好采用第二種和第三種結合的方式,先下載,后安裝。本書中使用第三項,先下載好安裝程序包,然后進行安裝。
4)下載Cygwin的完整安裝程序包,然后進行安裝,點擊圖1-60中的“下一步”按鈕,進入圖1-61所示界面。

圖1-61 選擇安裝目錄
5)設置“Root Directory”為“C:\cygwin”,點擊“下一步”按鈕,進入圖1-62所示界面。
注意:本書將下載的安裝程序包放置在D:\Android_soft目錄下,可以把安裝程序包解壓縮到任意目錄下進行安裝。
6)設置“Local Package Directory”后,點擊“下一步”按鈕,進入圖1-63所示界面。

圖1-62 選擇安裝程序包的解壓目錄

圖1-63 選擇安裝程序包
7)根據(jù)需要設置后點擊“下一步”按鈕,開始下載安裝過程,如圖1-64所示。
8)下載完成后,點擊“下一步”安裝,進入圖1-65所示界面。
注意:NDK需要的make和gcc在該節(jié)點下,點擊箭頭所指的循環(huán)箭頭圖示,將Default狀態(tài)切換成Install狀態(tài)。
9)點擊“下一步”按鈕進入安裝狀態(tài),如圖1-66和圖1-67所示。

圖1-64 下載安裝過程

圖1-65 將Default狀態(tài)切換成Install狀態(tài)

圖1-66 解壓安裝包

圖1-67 安裝進程
10)安裝成功后,運行Cygwin程序,如圖1-68所示。
11)輸入命令檢查make和gcc是否安裝成功,如圖1-69所示。

圖1-68 運行Cygwin

圖1-69 檢查安裝是否成功
若出現(xiàn)圖1-69所示信息,則說明安裝成功。
2.環(huán)境參數(shù)的設置
1)將下載的NDK壓縮包解壓到工作目錄,本書將Cygwin安裝在C:\cygwin目錄下,如圖1-70所示;Android NDK解壓后的工作路徑為C:\cygwin\usr\local\android\android-ndk-r6b目錄,如圖1-71所示。

圖1-70 Cygwin安裝在C:\cygwin目錄下

圖1-71 將NDK壓縮包解壓到工作目錄
2)為了修改環(huán)境變量,先執(zhí)行安裝好的Cygwin軟件,點擊桌面上的Cygwin圖標進行文件復制,如圖1-72所示,成功執(zhí)行之后關閉窗口。
注意:這一步很重要,否則看不到下一步中的文件。
3)修改C:\cygwin\home\Administrator目錄下的.bash_profile文件,添加以下內容,如圖1-73所示。
PATH=/usr/local/android/android-ndk-r6b:$PATH NDK_ROOT=/usrl/local/android/android-ndk-r6b NDK_Sample=/cygdrive/c/apk_workspace

圖1-72 文件復制

圖1-73 修改.bash_profile文件
其中,NDK_Sample所指的目錄是Eclipse的Workspace目錄,如C:\apk_workspace,若在Cygwin終端里使用,則路徑就表示為/cygdrive/c/apk_workspace。
注意:修改.bash_profile文件時請不要使用記事本處理,否則將會出現(xiàn)亂碼。
4)點擊Cygwin執(zhí)行程序,并進入NDK程序包目錄,如圖1-74所示。

圖1-74 進入NKD程序包目錄
5)為了驗證NDK開發(fā)環(huán)境是否搭建成功,可以對android-ndk-r6b\samples\目錄下的hello-jni程序進行編譯,查看是否可以得到SO文件,操作命令如圖1-75所示。

圖1-75 NDK的開發(fā)環(huán)境搭建成功
$cd samples/hello-jni $ndk-build
看到如圖1-75所示編譯結果,表示NDK的開發(fā)環(huán)境搭建成功。至此,在Windows平臺下成功搭建了NDK的開發(fā)環(huán)境。
1.4.4 Linux平臺NDK環(huán)境搭建
相比較Windows系統(tǒng),Linux平臺自身具有調試編譯功能。在Linux系統(tǒng)終端下可直接搭建NDK的開發(fā)環(huán)境。具體步驟如下:
1)先檢測一下Linux系統(tǒng)make和gcc工具的版本,打開Linux系統(tǒng)終端,依次執(zhí)行命令:make–v,gcc–v,如圖1-76所示。

圖1-76 檢測Linux系統(tǒng)中make和gcc工具的版本
2)把Linux下的NDK安裝程序包復制到當前用戶(本書使用的用戶名為dmatek)的Android_soft目錄下,如圖1-77所示。
3)NDK在Linux下的安裝路徑為/usr/local/android,執(zhí)行如下命令,把NDK包解壓縮,如圖1-78所示。
$cd/home/dmatek/Android_soft $tar –xvf android-ndk-r6b-linux-x86.tar.tar

圖1-77 復制NDK安裝程序包到當前用戶目錄

圖1-78 把NDK包進行解壓
4)執(zhí)行如下命令,將android-ndk-r6b移動到/usr/local/android目錄下,如圖1-79所示。
$sudo mv android-ndk-r6b /usr/local/android/
5)執(zhí)行如下命令解壓縮,解壓縮成功后得到NDK程序包,如圖1-80所示。
$cd /usr/local/android $ls $cd android-ndk-r6b $ls

圖1-79 移動到/usr/local/android目錄下

圖1-80 解壓縮后得到NDK程序包
6)執(zhí)行如下命令,添加NDK的環(huán)境變量到Linux系統(tǒng)中,如圖1-81所示。
sudo vi/etc/profile

圖1-81 添加NDK的環(huán)境變量到Linux系統(tǒng)中
7)在/etc/profile系統(tǒng)文件中添加如下程序代碼,如圖1-82所示。
export NDK=/usr/local/android/android-ndk-r6b export PATH=$PATH:$NDK
8)添加完成之后保存退出,并執(zhí)行如下命令使設置的環(huán)境變量生效,如圖1-83所示。

圖1-82 在在/etc/profile系統(tǒng)文件中添加程序代碼

圖1-83 使設置的環(huán)境變量生效
source/etc/profile
9)安裝完成后,編譯NDK中自帶的例子,執(zhí)行如下命令檢測NDK環(huán)境搭建是否成功,如圖1-84所示。

圖1-84 檢測NDK環(huán)境搭建是否成功
$cd samples/hello-jni $ndk-build
看到如圖1-84顯示結果,表明NDK環(huán)境搭建成功。
- 基于粒計算模型的圖像處理
- Web交互界面設計與制作(微課版)
- Mastering Julia
- Linux環(huán)境編程:從應用到內核
- CRYENGINE Game Development Blueprints
- Troubleshooting Citrix XenApp?
- uni-app跨平臺開發(fā)與應用從入門到實踐
- 微課學人工智能Python編程
- Java并發(fā)編程:核心方法與框架
- 從Power BI到Analysis Services:企業(yè)級數(shù)據(jù)分析實戰(zhàn)
- Scala Functional Programming Patterns
- Qt 4開發(fā)實踐
- 現(xiàn)代CPU性能分析與優(yōu)化
- Mastering Python
- Python網絡運維自動化