基于Linux下openssl交叉编译详解


一、openssl-1.1.1下载

在https://www.openssl.org/source/下载openssl-1.1.1源代码,下载流程大概如下图所示:
在这里插入图片描述


点击openssl-1.1.k.tar.gz进行下载,下载完成后将openssl-1.1.k.tar.gz复制到linux下的/opt/openssl目录下。
在这里插入图片描述

二、交叉编译openssl-1.1.1 (本文使用的是openssl-1.1.g版本)

1、解压openssl-1.1.g.tar.gz : 
	tar zxvf openssl-1.1.1.tar.gz 
2、进入openssl-1.1.g文件:
	cd openssl-1.1.g
3、创建 build_arm文件夹
	mkdir build_arm
4、执行config
	./config no-asm shared no-async --prefix=/opt/openssl/openssl-1.1.g/build_arm --cross-compile-prefix=arm-linux-
	
————————————————————————————————————————————————————————————————————————————————————————————————
参数说明:
	no-asm: 在交叉编译过程中不使用汇编代码代码加速编译过程.原因是它的汇编代码是对arm格式不支持的。
	shared: 生成动态连接库。
	no-async: 交叉编译工具链没有提供GNU C的ucontext库
	–prefix=: 安装路径,编译完成install后将有bin,lib,include等文件夹
	–cross-compile-prefix=: 交叉编译工具
————————————————————————————————————————————————————————————————————————————————————————————————

在这里插入图片描述

5、修改makefile,去除掉 -m64和-m32选项 

在这里插入图片描述

后执行 make && make install

在这里插入图片描述


交叉编译完成之后就可以使用库文件去敲代码啦,库文件位置:/opt/openssl/openssl-1.1.g/build_arm/lib 如下图所示:

在这里插入图片描述


若需要使用的详解多的话,有机会可以写一篇。

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
以下是在 Linux 上使用 OpenSSL 进行交叉编译的一般步骤: 1. 获取交叉编译工具链 您需要获取适用于您的目标体系结构的交叉编译工具链。这可以通过您的操作系统或第三方提供商进行获取。 2. 获取 OpenSSL 源代码 从 OpenSSL 官方网站下载最新版本的源代码,并将其解压缩到您的计算机上。 3. 配置 OpenSSL 在终端中导航到解压缩的 OpenSSL 目录,并运行以下命令: ``` ./Configure <options> --cross-compile-prefix=<prefix> ``` 其中,`<options>` 是您需要为 OpenSSL 配置指定的选项,以便在目标体系结构上进行编译。`<prefix>` 是您的交叉编译工具链的前缀。 例如,如果您的交叉编译工具链的前缀为 `arm-linux-gnueabi-`,您可以运行以下命令: ``` ./Configure linux-armv4 --cross-compile-prefix=arm-linux-gnueabi- ``` 4. 编译 OpenSSL 在终端中运行以下命令编译 OpenSSL: ``` make CC=<compiler> AR=<archiver> RANLIB=<ranlib> ``` 其中,`<compiler>` 是您的交叉编译工具链中的编译器,`<archiver>` 是您的交叉编译工具链中的静态库归档器,`<ranlib>` 是您的交叉编译工具链中的 ranlib 工具。 例如,如果您的交叉编译工具链的前缀为 `arm-linux-gnueabi-`,您可以运行以下命令: ``` make CC=arm-linux-gnueabi-gcc AR=arm-linux-gnueabi-ar RANLIB=arm-linux-gnueabi-ranlib ``` 5. 安装 OpenSSL 在终端中运行以下命令安装 OpenSSL: ``` make install DESTDIR=<install_dir> ``` 其中,`<install_dir>` 是您要安装 OpenSSL 的目录。 例如,如果您要将 OpenSSL 安装到 `/usr/local/openssl`,您可以运行以下命令: ``` make install DESTDIR=/usr/local/openssl ``` 完成这些步骤后,您应该能够在您的目标体系结构上运行 OpenSSL

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jine_GG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值