安卓编译OpenSSL源码。

编译OpenSSL是用ndk来编译源码的方式来生成应用程序和动态库,这种官方源码支持也比较便利。

1.下载源码解压。

注意不要下载GitHub里面的源码,最新的3.0配置安卓编译的时候无法配置成功的,有兴趣可以去研究3.0配置不成功的原因,这里采用最简单的降版本处理。

wget https://www.openssl.org/source/old/1.1.1/openssl-1.1.1a.tar.gz

tar -zxvf openssl-1.1.1a.tar.gz

2.配置编译。

cd openssl-1.1.1a

配置方面参考源码里面的说明文档(NOTES.ANDROID),一下是参考了里面的例子结合现有的ndk制作的命令。

export ANDROID_NDK=/work/huangriwang/android-ndk-r10e

PATH=$ANDROID_NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin:$PATH

用的是RK3288,这里配置用android-arm api版本是21,可以根据实际情况调整。

./Configure android-arm -D__ANDROID_API__=21

配置正常如下图

make -j8

编译没有报什么错就会生成相应的库和应用程序。

3.拷贝执行验证。

通过adb工具的命令把动态库放到/system/lib里面。把openssl程序放到/vendor/opt/webbox/bin里面即可。

命令参考:

adb root

adb remount

adb shell

adb push e:\libssl.so.1.1 /vendor/opt/webbox/bin

adb push e:\libcrypto.so.1.1 /vendor/opt/webbox/bin/

adb push e:\openssl /vendor/opt/webbox/bin

安卓编译OpenSSL源码相关推荐

  1. Ubuntu下使用CMake编译OpenSSL源码操作步骤(C语言)

    OpenSSL的版本为1.0.1g,在ubuntu下通过CMake仅编译c代码不包括汇编代码,脚本内容如下: build.sh内容: #! /bin/bashreal_path=$(realpath ...

  2. windows 平台使用 VS2017 编译 libevent 源码

    一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...

  3. vs2017运行显示系统找不到指定的文件_windows 平台使用 VS2017 编译 libevent 源码

    一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...

  4. OpenSSL之六:OpenSSL源码编译安装

    OpenSSL源码编译安装 一.OpenSSL在Linux平台的编译 打包环境 源码准备 编译安装 二.OpenSSL在Windows平台的编译 打包环境 编译32位库 编译64位库 错误处理 编译低 ...

  5. ubuntu下编译安卓7.0源码

    ubuntu下使用国内镜像下载安卓7.0源码 本文使用的环境如下: 1.Ubuntu系统:ubuntu-18.04.5-desktop-amd64 2.repo:谷歌开发的方便拉安卓源码的工具 3.p ...

  6. 记一次失败的Windows环境编译Nginx源码

    最近想学习下nginx的源码,之前在linux环境编译安装过多次,在windows环境还是第一次尝试,遇到了不少问题,记录一下.可惜的是编译成功后,在最后运行的时候还是会报错,如果有人遇到类似的问题希 ...

  7. 编译php源码错误集与解决

    起步 服务器Ubuntu14.04已后lamp开发环境,却还是没有不能顺利编译php源码,在此整理编译过程. 获取源码与编译 确保已安装了gitsudo apt-get install git -y, ...

  8. 编译linux源码报错,记录一次Linux内核源码编译实验

    记录一次Linux内核源码编译实验 文章目录 记录一次Linux内核源码编译实验 0. 实验环境 1. 选择.下载内核源码 2. 安装必要的依赖软件以及性能要求 3. 解压.配置和编译内核源码 3.1 ...

  9. 关于微信小程序反编译获取源码

    记录一下微信小程序如果反编译获取源码 需要用到的工具: 1.获取root权限的安卓手机,或者直接用模拟器(推荐用网易mumu模拟器,不推荐用夜神) mumu模拟器下载地址:   http://mumu ...

最新文章

  1. 32位jdk_MyEclipse 10((32/64位)、(MAC)、(Linux))软件安装教程
  2. 口令红包 java,[1.7.2]Gifts — 我的世界服务器在线礼物和登陆奖励插件
  3. hexo的yelee主题中的标签字体大小的修改
  4. 华为鸿蒙出来正当时,关于华为鸿蒙操作系统,中兴率先表态
  5. dropzonejs vue 使用_如何在Dropzone上手动触发上传文件事件
  6. Datawhale组队-Pandas(下)文本数据(打卡)
  7. 一个黑客和一个电脑白痴的对话
  8. 洛谷——P2525 Uim的情人节礼物·其之壱
  9. windows系统bat批处理 arp扫描一个网段的IP地址
  10. iOS项目之wifi局域网传输文件到iPhone的简单实现
  11. java arraylist对象_Java中ArrayList的对象引用问题
  12. html5游戏网页代码大全,HTML网页代码大全
  13. 支持移动触摸的jQuery图片Lightbox插件 1
  14. 快速解决Springboot打包完项目jar包后遇到的问题(1):“Error java: 程序包xxx不存在。
  15. 自然语言处理基于java实现(1) 之 中文分词
  16. 猪悟能淘宝商品下载专家v2.0 beta1.0版发布,欢迎测试!
  17. TextClock 24小时制
  18. 中国方言地图的总结与展望
  19. Cesium之粒子---简单粒子特效
  20. 程序设计天梯赛选拔 大炮打蚊子(刷水题就变傻,确实,感觉自己变傻了)

热门文章

  1. 番外篇:研究生心得:研二篇(一)
  2. 学习编程的方法西安尚学堂
  3. SpringSecurity给用户授权,一个用户能同时拥有多种身份Role,及权限鉴权注解方法hasRole及hasAuthority的使用区别
  4. Eclipse的android 安装(从零到有)
  5. WP小游戏产品海外发行经验小结
  6. SitePoint首席执行官为慈善事业走了100公里
  7. ionic在win7下环境配置
  8. PCL 任意多边形内部点云提取
  9. “食”在网络:传统餐饮行业亮剑互联网
  10. vn.py开源量化框架把我整蒙了,开始填坑。