1、配置ndk的linux環境
建立一套工具鏈,進入ndk的build/tools/目錄,執行如下命令:
./make-standalone-toolchain.sh --platform=android-12 --install-dir=/home/xiaoming/android-ndk --toolchain=arm-linux-androideabi-4.9(根據自己ndk具體版本變化)
將工具路徑下的bin和ndk的目錄新增到環境變數path裡面,例如
執行vim ~/.profile新增export path=/home/xiaoming/android-ndk-r13:/home/xiaoming/android-ndk
/bin:$path
執行source ~/.profile
(3)編譯libiconv開源庫
使用libtool裡面的config.sub替換libiconv裡面的所有congfig.sub;
執行cflags="-mthumb" cxxflags="-mthumb" libs="-lstdc++" ./configure --host=arm-linux-androideabi --prefix=/home/xiaoming/install/libiconv或者cflags="-mthumb" cxxflags="-mthumb" libs="-lstdc++" gl_cv_header_working_stdint_h=yes ./configure --host=arm-linux-androideabi --prefix=/home/xiaoming/install/libiconv --enable-static --disable-shared(靜態庫)命令;
如果不需要版本控制需要修改原始碼下生成的libtool檔案中的library_names_spec="\$libname\$";和soname_spec=""即可;(下同)
執行make命令,有如下錯誤
/stdio.h:1010:1: error: 『gets』 undeclared here (not in a function)
vim srclib/stdio.in.h檔案,接著搜尋到:
_gl_warn_on_use (gets, 「gets is a security hole - use fgets instead」); 這一行,然後把這個替換成:
#if defined(__glibc__) && !defined(__uclibc__) && !__glibc_prereq(2, 16)
_gl_warn_on_use (gets, "gets is a security hole - use fgets instead");
#endif
最後執行make install
使用NDK編譯ffmpeg庫
1 在 然後熱行如下命令安裝ndk,我是在ubuntu 14.04下安裝的,在win下要裝cygwin,會麻煩很多,不推薦。它官方的安裝提示如下 on linux and mac os x darwin 2.open a terminal window.3.go to the directory t...
重新編譯NDK庫
ndk network developer s kit 是ti提供的用來在嵌入式處理器上開發基於網路程式的開發平台。ndk包含開源c 和預編譯庫,使用者可以對原始碼進行修改後自行重新編譯。ndk當前支援tms320c6000 dsp系列和arm處理器。支援的平台有c64p,c66,c674,arm9...
Linux下NDK編譯so庫
2 隨便在哪個目錄直接解壓 3 配置系統環境變數 vim etc profile 在檔案末尾新增如下內容 export android ndk ndk路徑 export path and roid ndk android ndk androi dn d k 1 建立jni目錄 mkdir jni 2...