1. 程式人生 > >編譯 Android 平臺的 curl、openssl、zlib 庫

編譯 Android 平臺的 curl、openssl、zlib 庫

-c href libcurl 由於 我們 .sh com submodule 常用

curl、openssl、zlib for Android

curl、openssl、zlib 都是比較常用的 C++ 庫,本文說明如何將這幾個 C++ 庫通過交叉編譯,生成 Android 平臺可用的靜態庫 .a 或者動態庫 .so。

參考:

https://github.com/shishuo365/libcurl-android

1. 配置 NDK。

下載 NDK-r13b,並且配置環境變量中的 NDK_ROOT。其他版本的 NDK 不一定不行,但是可能會遇到一些問題,血的教訓表明,不同 NDK 版本還是有些特性的差異的,往往會導致一些一想不到的問題,所以,一個項目還是盡量能統一下 NDK 版本。

2. clone git 項目

cd 到一個文件夾,然後:

git clone https://github.com/shishuo365/libcurl-android.git

3. 下載 curl、openssl、zlib

原文是使用 git submodule 直接從 github 上下載的最新版本的源碼。我們這裏由於要編譯指定版本的庫,直接將源碼文件夾放到 libcurl-android/jni 下即可,如圖:

技術分享圖片

4. 執行編譯腳本

chmod 755 build_for_android.sh
./build_for_android.sh

之後經過漫長的等待,編譯成功後,庫會被拷貝到 jni/build/ 下,如圖:

技術分享圖片

編譯 Android 平臺的 curl、openssl、zlib 庫