openssl之arm编译

一、编译前工作

        进入下载页面:https://www.openssl.org/source,下载.tar.gz包到指定目录。例如:下载openssl-1.1.1k.tar.gz并解压到/home/jaron/workspace/openssl-1.1.1k
        在父目录创建构建目录,例如:/home/jaron/workspace/openssl-1.1.1k-build,通过终端进入构建目录。
默认编译动态库,例如:

./../openssl-1.1.1k/config \
no-asm \
CROSS_COMPILE=/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi- \
AR=ar \
CC=gcc \
CXX=g++ \
RANLIB=ranlib \
--prefix=/opt/openssl-1.1.1k-arm

如果要编译静态库则需要加上选项:no-shared,例如:

./../openssl-1.1.1k/config \
no-asm \
no-shared \
CROSS_COMPILE=/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi- \
AR=ar \
CC=gcc \
CXX=g++ \
RANLIB=ranlib \
--prefix=/opt/openssl-1.1.1k-arm

        在编译过程中如果出现如下错误:

Can't locate FindBin.pm in @INC (you may need to install the FindBin module) (@INC contains: /home/jaron/tools/ec20/crosstool/sysroots/x86_64-oesdk-linux//usr/lib/perl/5.20.0 /home/jaron/crosstool/sysroots/x86_64-oesdk-linux/ /usr/lib/perl /home/jaron/crosstool/sysroots/x86_64-oesdk-linux//usr/lib/perl/5.20.0 /home/jaron/crosstool/sysroots/x86_64-oesdk-linux/ /usr/lib/perl/site_perl/5.20.0 /home/jaron/crosstool/sysroots/x86_64-oesdk-linux//usr/lib/perl/vendor_perl/5.20.0 /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/perl/site_perl/5.20.0/ /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/perl/site_perl/5.20.0 /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/perl/vendor_perl/5.20.0/ /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/perl/vendor_perl/5.20.0 /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/perl/5.20.0/ /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/perl/5.20.0 /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/perl/5.20.0 .) at ./../openssl-1.1.1k/Configure line 15.

        解决办法:切换至root权限,再重新配置。

二、编译安装

        配置成功后,修改Makefile文件,查找到-m64并删除。
在这里插入图片描述
        打开终端,输入命令:make,成功后,输入命令:make install,即可把openssl库安装到目录:/opt/openssl-1.1.1k-arm

三、环境配置

        设置环境变量,编辑/etc/profile文件,末尾添加:

export OPENSSL_ROOT=/opt/openssl-1.1.1k-arm
# 运行依赖
export OPENSSL_CONF=$OPENSSL_ROOT/ssl/openssl.cnf
export LD_LIBRARY_PATH=$OPENSSL_ROOT/lib:$LD_LIBRARY_PATH
# 开发依赖
export PATH=$OPENSSL_ROOT/bin:$PATH
export CPATH=$OPENSSL_ROOT/include:$CPATH
export LIBRARY_PATH=$OPENSSL_ROOT/lib:$LIBRARY_PATH
export PKG_CONFIG_PATH=$OPENSSL_ROOT/lib/pkgconfig:$PKG_CONFIG_PATH # 需要同步修改pkgconfig目录下libcrypto.pc、libssl.pc、openssl.pc文件中的prefix路径,指定为当前的库路径
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值