OpenSSL动态链接库源码安装教程

Openssl 是一个开放源代码的SSL协议的产品实现,它采用C语言作为开发语言,具备了跨系统的性能。调用Openssl的函数就可以实现一个SSL加密的安全数据传输通道,从而保证客户端和服务器之间数据的安全。

OpenSSL整个软件包大概可以分成三个主要的功能部分:SSL协议库、应用程序以及密码算法库。OpenSSL的目录结构自然也是围绕这三个功能部分进行规划的。作为一个基于密码学的安全开发包,OpenSSL提供的功能相当强大和全面,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。

如果程序需要使用OpenSSL的API,那么可以通过源码安装得到DLL或者SO库文件,这样就能在Windows和Linux环境下使用其API进行二次开发了。

下载源码

从Github上下载

请注意选择分支:

https://github.com/openssl/opensslhttps://github.com/openssl/openssl

https://github.com/openssl/openssl

从官网下载

https://www.openssl.org/source/https://www.openssl.org/source/

https://www.openssl.org/source/可以选择目前最新版本:openssl-1.1.1l.tar.gz,

对于历史版本,可以从这里下载:https://www.openssl.org/source/old/。

这里我们下载 openssl-1.1.1l.tar.gz:

解压下载后的OpenSSL,分别存放到两个目录,用于在Windows下编译32位和64位版本,

安装ActivePerl

由于OpenSSL的配置是使用Perl写的,因此在Windows环境上编译时需要安装一个Perl环境,官方推荐的是ActivePerl。

下载ActivePerl:https://platform.activestate.com/ActiveState/Perl-5.32/distributions

如果官网下载不方便,可以从这里下载,http://xiazai.jb51.net/202111/yuanma/ActivePerl_jb51.rar

Windows下编译64位OpenSSL动态库

假设系统已安装VS,从开始菜单找到 “x64 Native Tools Command…”,点击右键,以管理员方式打开。

注:这里不能选错,如果选错后面编译可能会出现问题。

定位到64位OpenSSL源码的根路径:

C:\Users\wang xiaohui\Desktop\OpenSSL_1_1_1_l\openssl-1.1.1l_x64\openssl-1.1.1l

执行命令:

perl Configure VC-WIN64A no-asm --prefix="C:\Users\wang xiaohui\Desktop\OpenSSL_1_1_1_l\openssl-1.1.1l_x64\output"

执行命令:

nmake

执行命令:

nmake

执行命令:

nmake install

这样就可以在--prefix=指定的目录下找到编译后的内容了,

Windows下编译32位OpenSSL动态库

整体步骤和编译64位动态库相同,不同地方有两点,

需要选择命令行工具 “x86 Native Tools Command…

配置时需要执行下面命令

perl Configure VC-WIN32 no-asm --prefix="C:\Users\wang xiaohui\Desktop\OpenSSL_1_1_1_l\openssl-1.1.1l_x86\output"

Ubuntu 21.04 下安装OpenSSL动态库

注:确保当前环境已经安装好gcc和make等工具。

拷贝源码到路径:/home/sunny/work/build/openssl/openssl-1.1.1l

创建output目录:/home/sunny/work/build/openssl/output,并在源码根路径下执行下面命令:

./config --prefix=/home/sunny/work/build/openssl/output

执行命令:

make

执行命令:

make test

执行命令:

make install

此时在--prefix指定的目录下即可找到编译后的内容:

安装完成后直接执行bin下面的openssl命令可能会遇到如下问题:

这是因为无法找到动态链接库,可通过以下方法解决。

root身份执行以下命令添加库引用目录:

echo "/home/sunny/work/build/openssl/output/lib" >> /etc/ld.so.conf.d/libc.conf && ldconfig

此时就不会有问题了,

到此这篇关于OpenSSL动态链接库源码安装的文章就介绍到这了,更多相关OpenSSL动态链接库内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Windows安装配置C/C++(VS2017)OpenSSL开发环境配置教程

    OpenSSL开发环境配置教程分享给大家,具体内容如下 [环境信息] Windows 10 Enterprise Version 10.0.15063 下载地址:http://www.itellyou.cn/) Visual Studio Enterprise 2017 Version 15.2(26430.12) 下载地址:https://www.visualstudio.com/downloads) OpenSSL v1.1.0f 下载地址:https://slproweb.com/prod

  • 详解C++中OpenSSL动态链接库的使用

    在上一篇文章 OpenSSL动态链接库源码安装 中我们介绍了如何在Windows和Linux环境中编译OpenSSL动态链接库,这篇文章我们将介绍如何在C代码中引用OpenSSL动态链接库. 测试代码 以下测试代码 main.c 将分别在Windows和Linux环境中编译,该代码的作用是计算给定文件的SHA256值, #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include &q

  • OpenSSL动态链接库源码安装教程

    Openssl 是一个开放源代码的SSL协议的产品实现,它采用C语言作为开发语言,具备了跨系统的性能.调用Openssl的函数就可以实现一个SSL加密的安全数据传输通道,从而保证客户端和服务器之间数据的安全. OpenSSL整个软件包大概可以分成三个主要的功能部分:SSL协议库.应用程序以及密码算法库.OpenSSL的目录结构自然也是围绕这三个功能部分进行规划的.作为一个基于密码学的安全开发包,OpenSSL提供的功能相当强大和全面,囊括了主要的密码算法.常用的密钥和证书封装管理功能以及SSL协

  • 企业级使用LAMP源码安装教程

    目录 LAMP架构 1.lamp介绍 2.web服务工作流程 web服务器的资源分为俩种:静态和动态资源 web服务器如何处理客户端的请求 2.1cgi和fastcgi 2.2httpd与php结合 2.3web工作流程 3.LAMP平台构建 环境: lamp安装的顺序: 3.1安装httpd 3.2安装mysql 3.3安装php 3.4配置php 3.5配置apache 4.博客创建1 5.服务开机自启配置选择性使用 LAMP架构 (同一台服务器上搭建) 1.lamp介绍 lamp,由lin

  • CentOS7.4 源码安装MySQL8.0的教程详解

    MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 以下为本人2018.4.23日安装过程的记录.整个过程大概需要一个小时,make && make install过程需要的时间较长. 一.环境 CentOS7.4   64位  最小化安装 二.准备工作 1.安装依赖 yum -y install wget cmake gcc gcc-c++ ncurses ncurses-devel libaio

  • CentOS 6.5源码安装Erlang教程

    Erlang目前已经是Fedora和Debian/Ubuntu软件仓库中的一部分. Erlang目前最新的版本是OTP 17.0.Erlang是一种编程语言,用于构建大规模.高可伸缩性.高可用性的软实时系统的编程语言.它已经在电信.金融.电子商务.网络电话和即时消息中得到应用.Erlang的运行时系统已经内建了对并发.分布式和容错的支持. OTP是Erlang库和设计原则的集合,提供了开发各种系统的中间件.它包含了自己的分布式数据库.面向其它编程语言的接口.调试和发布处理工具等. BEAM是Er

  • linux下源码安装mysql5.6.20教程

    linux下MySQL 5.6源码安装记录如下 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件包 复制代码 代码如下: yum -y install  gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake 3.编

  • OEL7.6源码安装MYSQL5.7的教程

    首先官网下载安装包https://dev.mysql.com/downloads/mysql/5.7.html#downloads 然后上传解压至/usr/local目录 [root@localhost db]# tar -xf mysql-5.7.26-linux-glibc2.12-x86_64.tar [root@localhost db]# tar -xzf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz [root@localhost db]# m

  • Centos7下源码安装Python3 及shell 脚本自动安装Python3的教程

    一.源码安装 首先安装开发工具包 yum groupinstall -y "Development tools" 安装依赖软件包 yum -y install gcc gcc-c++ zlib-devel bzip2-devel openssl-devel sqlite-devel readline-devel libffi-devel wget 上Python 官网 找源码包的下载地址 wget https://www.python.org/ftp/python/3.7.6/Pyth

  • Apache源码安装和虚拟主机配置的教程详解

    源码安装Apache 1.上传Apache源码安装所需软件包 2.安装: 安装顺序 apr->apr-util->pcre->httpd 安装编译环境 yum -y install gcc gcc-c++ apr 编译安装 tar xzf apr-1.4.6.tar.gz cd apr-1.4.6 ./configure --prefix=/usr/local/apr make && make install apr-util 编译安装 tar xzf apr-util-

  • CentOS6.9+Mysql5.7.18源码安装详细教程

    CentOS6.9+Mysql5.7.18源码安装,以下操作均在root用户下执行. 1.安装依赖工具 cmake make3.75+ gcc4.4.6+ Boost1.59.0 bison ncurses yum install -y cmake,make,gcc,gcc-c++,bison, ncurses,ncurses-devel cd /opt wget https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_

  • MySQL的源码安装及使用UDFs进行数据自动更新的教程

    MySQL的源码安装 1. 安装依赖组件 # yum install gcc gcc-c++ ncurses-devel perl -y 2. 安装cmake # wget http://www.cmake.org/files/v2.8/cmake-2.8.12.tar.gz # tar zxvf cmake-2.8.12.tar.gz # cd cmake-2.8.12 # ./bootstrap # make && make install 3. 安装bison # wget http

随机推荐