Advertisement

win10 VS2017 安装OpenSSL

阅读量:

安装openssl走了很多弯路,记录一下。

1、下载原材料:

因为报错nasm not found,下了nasm,它是一个汇编语言编译程序。

2、环境变量:
将NASM路径添加至path变量,并尝试运行以下命令:nasm -h;
此外,在path中还需要包含perl语言的bin目录。

然后我把openssl文件夹整个放到了vs安装目录;

以管理员身份启动Visual Studio 2017,在命令提示符窗口中切换至openssl文件夹,并执行perl配置VC-WIN32的操作

结果出现:

复制代码
    It looks like you don't have either nmake.exe or dmake.exe on your PATH,
    so you will not be able to execute the commands from a Makefile.  You can
    install dmake.exe with the Perl Package Manager by running:
    
    ppm install dmake
    
      
      
      
      
      
    
    代码解读

那就 ppm install dmake ;(憋输入分号啊)

完成之后,输入ms\do_nasm,总提示:

复制代码
    'ms\do_nasm' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
    
      
      
    
    代码解读

发现VC自带的构建程序已经没有”ms\do”系列的程序了。。

找到stackoverflow说先输入nmake,要等一段时间;

然后可以输入nmake test检验,再等一段时间;

按照以下命令行输入nmake install –prefix=DIR,则会生成名为OpenSSL的文件夹。该文件夹内包含lib、include、bin以及html文件。

感觉比原来省了很多步骤,大概是一次都安装了吧。

最后感到有些失落。感到十分遗憾的是, openssl提供了现成的可编译版本, 因此这些步骤就不需要执行。不过经过一番实践后发现, 我的自定义编译版本比预编译二进制文件更为安全。

然后是vs项目配置:
右击新建的c++项目,属性,VC++目录,包含目录添加OpenSSL里面include的目录(我的是D:\come here apps\security\OpenSSL\include),库目录加上lib目录(D:\come here apps\security\OpenSSL\lib);
链接器目录,输入,附加依赖项添加libcrypto.lib;libssl.lib。
(由原先的libeay.lib、ssleay.lib变成了libcrypto.lib、libssl.lib)

在直接进行编译操作时会遇到错误提示缺少必要的库文件libcrypto-1_1.dll。为了修复此问题,在项目根目录下创建一个bin目录,并将这两个库文件(libcrypto-1_1.dll和libssl-1_1.dll)放置其中。然后将这些二进制文件与工程相关的头文件(.h)和源代码文件(.cpp)放在同一目录下即可解决问题。

这里写图片描述

然后就可以加入头文件跑起来了。

全部评论 (0)

还没有任何评论哟~