並在Cygwin 運行環境(E:\cygwin\home\Administrator\.bash_profile)裏配置了NDK 的路徑(如E:\android_dev_tool\android-ndk-r8d)到 PATH 環境變量裏(ndk=/cygdrive/e/android_dev_tool/android-ndk-r8d
export NDKRoot
注意:是兩行)。
1. 爲NDK工程添加Builder選擇 相應的 Project ,點擊右鍵 選擇 Properties ,在窗口裏選擇Builders ,
新增一個“Android NDK Builder”編譯配置:
2. 配置
2.1 在Main 頁面裏
Location 欄 選擇 你安裝Cygwin時配置的root目錄下的 bash.exe 所在路徑,
F:\android\NDK\Cygwin\root\bin\bash.exe
在Working Directory 裏配置路徑爲 root下的bin目錄的路徑
F:\android\NDK\Cygewin\root\bin\bash.exe
最重要的是在Arguments的配置,(注意! NDK r4版本編譯C,C++程序的方式做了變化)
--login -c "cd /cygdrive/f/android/workspace/HelloNDK/jni && ndk-build "
以上參數表示 首先 登陸 Cygwin , 然後 進入 HelloNDK 這個工程 下的jni 目錄(該目錄下存放 c或c++的文件和 Android.mk)。最後 執行 “ndk-build” 命令 執行編譯。
如果ndk-build命令無法識別,先確認是否成功配置了NDK 的所在路徑(如E:\android\NDK\android-ndk-r8d)到Path環境變量裏。
2.2 在Refresh 頁,選擇 Specific resources 並選擇要刷新的文件
2.3 在Build Options 頁 如下選擇,則可以實現修改C或C++程序後立自動編譯生成**.so 文件
同樣選擇 C或者C++原程序所在目錄下的所有文件,作爲相關的資源
3. 添加 CDT插件
直接在線安裝就可以了
我的eclipse 是 3.5.1版 ,安裝CDT 3.1 也可以用
更新的URL
http://download.eclipse.org/tools/cdt/releases/eclipse3.1
最後補充一下:如果在Linux下開發NDK ,配置Eclipse自動編譯器時,
配置方式略有不同:
其中
Location欄填當前NDK工具包“ndk-build”文件在Linux環境下的路徑即可
如:/home/justinchen/AndroidDEV/android-ndk-r4b/ndk-build
告訴Eclipse在程序文件發生變更時,執行ndk-build命令,
Working Directory
配置爲當前工程裏的jni所在目錄即可
如:/home/justinchen/AndroidDEV/workspace/HelloWorldAndroid/jni
也可以通過配置變量的方式配置以上路徑。
在新版的NDK(據說r7以後)中集成了cygwin的部分功能來方便基於ndk的開發,當然這時也就不需要cygwin了,配置當然也就不同
通過New新建一個builder
接下來就是配置NDK相關
其中Location指向NDK安裝目錄的ndk-build.cmd;Working Directory指向當前項目就行(好像指向當前項目的jni目錄也行);至於Arguments就什麼也不用填了
接下來是設置刷新
暫且這樣選
其中,在配置Build
Options的時候,點擊Specify Resources按鈕,選中工程下的jni文件夾如下:
這樣,EC就能自動調用NDK腳本編譯jni下的C/C++代碼了。