openssl源码编译输出库-guidance-傻瓜式教程

目标:
下载openssl源码
编译输出目标版本,例如使用Android NDK编译输出Android使用的32位的库

1、下载源码
git clone https://github.com/openssl/openssl.git -b openssl-3.0.9

2、 请下载Linux版本的Android NDK
请下载Linux版本的Android NDK, 并完成解压
https://developer.android.com/ndk/downloads?hl=zh-cn
在这里插入图片描述

3、请找到Notes for Android platforms文档
openssl github : https://github.com/openssl/openssl
Notes for Android platforms : https://github.com/openssl/openssl/blob/master/NOTES-ANDROID.md
在这里插入图片描述
在这里插入图片描述
4、编译
按照文档,配置好您上述解压出的NDK中的工具链路径,并加入PATH变量。
注意./Configure 后的参数,然后再敲击make即可。

export ANDROID_NDK_ROOT=/home/test/workspace/code/trustonic/trustonic_tee/Common/AndroidSdk/r29.4-linux/ndk-bundle
PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
./Configure android-arm -D__ANDROID_API__=29
make

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5、输出文件
输出文件,请vim Makefile去查看,主要看这里的LIBS和SHLIBS中定义的目标。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/19913.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CUDA11.1、cuDNN8.6.0、Tensorrt8.5.3,ubuntu20.04安装过程记录

CUD11.1 下载地址:CUDA Toolkit Archive | NVIDIA Developer 安装: wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run sudo sh cuda_11.1.1_455.32.00_linux.run 对于不是sudo用户&…

46.声明类关键字 var new funcion let const

目录 1 var 2 new 3 function 4 let 4.1 let不能在同一作用域下重复声明 4.2 let无法进行变量提升 4.3 var的变量会跑出当前作用域,但是let不会 4.4 let与var的循环定时器问题 5 const 5.1 简单值 5.2 复杂值 1 var 使用var只能让函数内部使用…

融合ELO机制的销售能力评估方案

ELO排位赛算法 文章目录 ELO排位赛算法一. ELO机制二. 销售能力抽象为ELO排位赛设计2.1 基础设计2.2 存在问题 三. 优化措施3.1 如何解决新销售存在冷启动问题新老人动态K值调整假设检验衡量赢的程度 3.2 如何解决转化率存在不置信的问题ELO升级为MultiELO 一. ELO机制 ELO等级…

C语言结构体

一、结构体的定义: 结构体(Struct)是C语言中的一个重要数据类型,它可以用来存储多个不同类型的变量。结构体类似于一个自定义的数据类型,可以包含多个不同类型的成员变量,每个成员变量可以有自己的数据类型…

sqlite3交叉编译

1、交叉编译sqllite3可以先从官网下载最新最新的源码进行编译。sqlite3下载sqlite3有两种版本的源代码,sqlite-amalgamation-3420000.zip这种是将所有的操作放到sqlite3中进行使用的。虽然官方推荐使用这种方法。但是对于嵌入式移植还是使用sqlite-autoconf-3420000…

WebGPU实战3D电商

在过去的几年里,我们一直在为 WebGPU 编写新版本的 Babylon.js 引擎。 随着下一代 Web 3D 即将在Chrome 102~103版本上公开WebGPU 1.0 ,人们的兴奋情绪与日俱增。 在这篇博文中,我将快速概述这个新的 Babylon.js WebGPU 引擎,并将…

go 爬虫速度控制

go 爬虫速度控制 使用go语言用原生net/http写爬虫如何优雅的控制并发和请求速度控制并发限流并发和限流的区别简单说明有了并发控制为什么还要限流 最总代码 使用go语言用原生net/http写爬虫如何优雅的控制并发和请求速度 go程序的执行效率相对python要快的多,且占…

今天实习第一天,用git

老板问了我是否用过gitee,并且是否用过git,在集成工具中,会git来提交代码。我说没有。 所以,先使用gitee。 01.登录gitee的官网,在此处登录。 02.绑定邮箱,我用的是QQ邮箱。 03.git的历史 git是分布式的…

用OpenCV进行图像分割--进阶篇

1. 引言 大家好,我的图像处理爱好者们! 在上一篇幅中,我们简单介绍了图像分割领域中的基础知识,包含基于固定阈值的分割和基于OSTU的分割算法。这一次,我们将通过介绍基于色度的分割来进一步巩固大家的基础知识。 闲…

Java实现站内信

假如后台某个任务比较耗时,这时就需要任务完成时,通知一下用户,如下图,实现站内信的效果 两张表即可实现 t_message_content内容表 CREATE TABLE t_message_content (c_id int(11) NOT NULL AUTO_INCREMENT COMMENT 消息的id,se…

flink-conf.yaml的参数

参数 ⚫jobmanager.memory.process.size:对 JobManager 进程可使用到的全部内存进行配置, 包括 JVM元空间和其他开销,默认为 1600M,可以根据集群规模进行适当调整。⚫ taskmanager.memory.process.size:对 TaskManage…

【全栈开发指南】OAuth2授权获取token调试接口的方式

在我们实际应用接口的调用调试过程中,需要用到token或者刷新token,GitEgg支持OAuth2.0协议进行认证授权,这里介绍说明如何通过Postman获取token和refresh_token并进行接口调试。 1、使用密码模式获取token 根据spring-security-oauth2的实现…