ADT+NDK搭建jni編譯環境,adtndk搭建jni
jni是android調用C++編寫的庫的介面。C++和java的區別不在此文的討論範疇,另外這裡也只是記錄下,如何搭建環境。
首先是下載ADT包和NDK包。
ADT包包含了eclipse,所以不用安裝Eclipse。
安裝好後,有2種方式來實現編譯jni工程。
一種方式是在ADT的菜單windows,屬性,build中設定NDK的路徑,同時在工程的屬性中,選擇預設ndk編譯。
另外一種方式是在ADT的菜單windows,屬性,build中設定NDK的路徑。同時在系統內容變數中配置NDK_ROOT以及路徑,然後在工程的屬性中,不選擇預設NDK,輸入編譯指令。
由於本機沒有安裝環境,所以無法。若有幸被看到此文,有任何疑問可以聯絡我。
[置頂] window下NDK詳細配置及怎編譯
首先下載Cygwin和NDK(我用的是android-ndk-r7)下載Cygwin時需要選中我們想要的,如果不知道的話建議全部安裝,不過是需要時候做代價的噢現在的NDK版本不需要進安裝了,省去了安裝的那一步Cygwin安裝完畢,NDK下載完畢後1.在Cygwin配置NDK環境變數(C:\cygwin\home\Administrator\.bash_profile)這是我的目錄 找到Cygwin目錄,依次為- home - administrator 檔案名稱 .bash_profile2.開啟.bash_profile檔案增加下面兩行(ndk可以隨便取名) ndk=/cygdrive/c/android-ndk-r7 (/cygdrive/盤符(沒有:號)/ndk目錄) export ndk3.測試 開啟Cygwin直接輸入cd $ndk會直接跳到ndk根目錄,這時NDK環境配置完畢 進入ndk的samples目錄中任何一個項目子目錄下(cd $ndk/samples/hello-jni),這裡以hello-jni項目為例 然後在輸入$ndk/ndk-build進行編譯 出現( Gdbserver : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver Gdbsetup : libs/armeabi/gdb.setup Install : libhello-jni.so => libs/armeabi/libhello-jni.so ) 恭喜你,編譯成功 如果報not open awk.exe...異常的話 需要進入ndk目錄下找到prebuilt\windows\bin目錄,然後把awk.exe更改成任意名字即可
android NDK編譯問題,在將項目中的JNI部分編譯時間,報出了錯誤,不可以成功產生SO檔案,
-lcrypto是缺少庫libcrypto.so吧
你這用什麼系統編的啊為什麼執行命令看是linux 底下還有D盤
程式裡也有錯誤啊
jni/OpensslWapper.cpp:102: error: undefined reference to 'BN_bn2hex'