如何在arm编译 openssl1.0.0 的shared 库

本文详细介绍了在ARM平台上交叉编译OpenSSL库的方法,包括静态库和共享库的编译过程,以及如何替换默认的gcc编译器为arm-linux-gnueabihf-gcc,适用于嵌入式系统的开发需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在查arm平台上签名的问题, 遇到一个问题,需要openssl 的shared 库,竟然找不到交叉编译的方法

好不容易找了一个网站,上面有说到的,分享如下:

  1. static 库

./Configure no-asm --prefix=/home/gaowei/openssl  os/compiler:arm-linux-gnueabihf-gcc

 

vi Makefile

remove -m64

对于pc机是64bit的是去掉 -m64, 32bit 去掉-m32

make

make install

 

 

  1. shared 库

 

(1). /config shared --prefix=/home/gaowei/openssl no-asm

如果直接在上一个交叉编译shared库,会出现不支持的提示而自己动使用 no-shared参才替换

(2). vi Makefile

remove -m64

对于pc机是64bit的是去掉 -m64, 32bit 去掉-m32,  定义在这些CFLAGS & LIB_LDFLAGS中的

  1. 这里就是一个偷梁换柱的过程, 把PC上用的gcc 换成arm-linux-gnueabihf-gcc, 换成交叉工具链就可以了.

CROSS_COMPILE= /opt/arm-toolchan/bin

 

CC= $(CROSS_COMPILE)arm-linux-gnueabihf-gcc

AR=$(CROSS_COMPILE)arm-linux-gnueabihf-ar $(ARFLAGS) r

RANLIB= $(CROSS_COMPILE)arm-linux-gnueabihf-ranlib

MAKEDEPPROG= arm-linux-gnueabihf-gcc

 

  1. Complie and install OpenSSL

 

$ make

$ make install

参考:

https://shadowllife.wordpress.com/2018/05/03/how-to-cross-compile-openssl/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值