fastdds在windows10中的环境搭建—asio and tinyXML2 libraries、openssl、Libp11 and SoftHSM libraries的下载安装(六)

一、asio and tinyXML2 libraries的下载安装

1、按照官网给的链接,直接点击下载包
2、按照官网给的命令,直接安装即可

注意:,一是用管理员身份打开power shell,二是更换到下载的两个包的路径
image

下面是的我的截图

image

二、openssl的下载安装(按照fastdds官网步骤下载安装)

1、按照官网给的openssl官网链接下载对应的exe文件

image

2、exe文件直接双击安装,可以更换路径(openssl不建议更换了,我这里使用默认c盘路径,我电脑更换后一直出错,而且后面的库文件也需要配置这里相应的路径,所以可以使用默认路径),一路next,最后的一个页面里我是把捐赠的对号全部去掉,点击finish

image

3、按照官网提示,添加环境变量(下图是我的添加结果,直接将目录添加到path中)

image

4、测试安装成功,打开cmd,输入命令:
openssl version

显示版本,即可表明安装成功。
image

5、注意:官网中我理解的意思是添加了一个环境变量OPENSSL_ROOT_DIR而已,但是只是添加一个环境变量的话cmd中还是提示没有openssl命令,所以我才添加到了path中,最后提示有该命令。
最后为了能和官网尽量匹配,也保证没别的问题,就另外新建立了一个环境变量OPENSSL_ROOT_DIR,也不影响原先的结果。

三、Libp11 and SoftHSM libraries的下载安装

3.1 lib11库的下载安装(按照fast官网步骤下载安装)

3.1.1 按照官网的链接地址下载包
image
注意:我自己的下载步骤:
第一步:官网链接点进去
image
第二步:在第一步的基础上点击进去链接下载了源码
image
3.1.2 按照官网给的安装步骤进行安装
第一步:点进去installations instroctions链接
image
第二步:可以看到三种情况进行编译,我采用的第三种
image
第三步:管理员打开vs的x64 command prompt,输入命令(易错点:第一路径一定要用双引号,不然命令识别错误,第二在lib11库的目录下输入命令):

nmake /f Makefile.mak OPENSSL_DIR="C:\Program Files\OpenSSL-Win64" BUILD_FOR=WIN64

最后得到编译结果,会在src目录下生成pkcs11.dll,以及libp11.dll:
image
image

3.2 SoftHSM库的下载安装(按照fastdds官网步骤下载安装)

第一步:点击fastdds官网的下载库链接
image
第二步:两种下载安装方式,第一个是zip包,需要自己设置环境,第二个是msi下载器,自动配好环境,我下载的是第二个
image
第三步:,安装过程中一直next即可(安装中我这默认路径到d盘了,所以也没动,按理是可以改动的),最后查看一下环境变量确定添加进去了。
image

3.3 环境配置

第一步:fastdds官网要求配置如下图所示,进行下图中的第一步:
image
image
两行命令如下:

cmd> set OPENSSL_CONF=C:\Program Files\OpenSSL-Win64\bin\cnf\openssl.cnf
powershell> $Env:OPENSSL_CONF="C:\Program Files\OpenSSL-Win64\bin\cnf\openssl.cnf"

分别在cmd和powershell中执行两行命令:
image
image
第二步:设置openssl的配置文件,进行下图中的第二步(记得管理员权限打开notebook,不然修改不了,忘了记事本行不行了)
image
首先一定要找到正确的配置文件路径,可使用openssl version -a 查看OPENSSLDIR环境变量,保证openssl.cnf位于此目录下面.编辑openssl.cnf文件,添加一行定义,这一行要位于文件顶部,并且位于所有section定义之前。

openssl_conf = openssl_init

另外在配置文件底部添加以下内容:
注意:下面复制的两个库的路径dynamic_path和MODULE_PATH,其中pkcs11.dll就是上面libp11项目编译出来的动态库,softhsm2-x64.dll是softhsm2安装路径的动态库

[openssl_init]
    engines = engine_section

[engine_section]
    pkcs11 = pkcs11_section

    [pkcs11_section]
    engine_id = pkcs11
    dynamic_path = D:/libp11-libp11-0.4.11/src/pkcs11.dll
    MODULE_PATH = D:/SoftHSM2/lib/softhsm2-x64.dll
    init = 0

第三步:进行下图中的第三步
image
打开命令行,输入如下命令

openssl engine pkcs11 -t

得到如下结果:
image

posted @ 2022-07-06 17:11  时光如你般美好  阅读(1570)  评论(0编辑  收藏  举报