1. 下载 openssl 代码,这里以 openssl-1.1.1g 版本为例。
2. 下载 ndk 工具包;
3. 编辑编译脚本 build.sh:
export ANDROID_NDK=/home/xxx/android-ndk-r21
export PATH=$ANDROID_NDK/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
./Configure android-arm64 -D__ANDROID_API__=26
make
4. 在 openssl-1.1.1g 目录下执行 build.sh脚本;
5. 编译完成后,会在根目录下生成 libcrypto.so libssl.so,在 apps 目录下生成 openssl
6. 推送相关文件到 android 设备
adb push libcrypto.so.1.1 /data/local/tmp
adb push libssl.so.1.1 /data/local/tmp
adb push libcrypto.so /data/local/tmp
adb push libssl.so /data/local/tmp
adb push openssl /data/local/tmp
7. 执行测试,就可以用了
adb shell
$ cd /data/local/tmp
$ chmod a+x openssl
$ export LD_LIBRARY_PATH=. && ./openssl hel