2021-05-12 14:32:11
Android編譯OpenSSL庫
工具:
wget https://wiki.openssl.org/images/7/70/Setenv-Android.sh
去掉指令碼中^M
sed -i 's/r//g' Setenv-android.sh
新增許可權
chmod a+xSetenv-android.sh
修改Setenv-android.sh指令碼
紅色為我的重要修改,制定NDK和NDK ROOT資訊,後續編譯安裝會使用。
diff檔案:
18c18
<_ANDROID_NDK="android-ndk-r10"
---
>_ANDROID_NDK="android-ndk-r9"
24,25c24,25
<_ANDROID_EABI="arm-linux-androideabi-4.6"
<#_ANDROID_EABI="arm-linux-androideabi-4.8"
---
> #_ANDROID_EABI="arm-linux-androideabi-4.6"
>_ANDROID_EABI="arm-linux-androideabi-4.8"
39,40c39,40
<#_ANDROID_API="android-18"
< _ANDROID_API="android-19"
---
>_ANDROID_API="android-18"
> #_ANDROID_API="android-19"
47c47
<ANDROID_NDK_ROOT=/mnt/test/miniRouter/android/android-ndk-r10
---
>
下載openssl
wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz
解壓
tar zxfopenssl-1.0.2l.tar.gz
執行工具
sourceSetenv-android.sh
檢視是否生效,生效後可以看到設定的值
echo $ANDROID_API
編譯安裝,注意紅色部分,是安裝的位置
cd openssl-1.0.2l
perl -pi -e's/install: all install_docs install_sw/install: install_docs install_sw/g'Makefile.org
./config sharedno-ssl2 no-ssl3 no-comp no-hw no-engine--openssldir=/usr/local/ssl/$ANDROID_API
make depend
make all
sudo -E make installCC=$ANDROID_TOOLCHAIN/arm-linux-androideabi-gccRANLIB=$ANDROID_TOOLCHAIN/arm-linux-androideabi-ranlib
將/usr/local/ssl/$ANDROID_API目錄下copy到NDK中
cp -r /usr/local/ssl/$ANDROID_API/include/openssl $ANDROID_DEV/include/
cp -r /usr/local/ssl/$ANDROID_API/lib/*$ANDROID_DEV/lib/
相關文章