openssl win10 下配置遇到的问题以及解决

2018-06-14  本文已影响0人  _不知年

安装perl

没什么好说的,按照其他教程一步步安装好,然后配置环境变量就好,并没有遇到问题。
测试perl是否安装好:
命令行进入安装目录并测试,会有如下结果:(我直接默认安装在c盘)

cd C:\Perl64\eg
C:\Perl64\eg>perl example.pl
Hello from ActivePerl!

官网下载openssl最新版

官网指路 http://www.openssl.org/source/

安装vs2017

这是之前装的,离线版,其中包括了VC。

开始安装openssl

首先初始化编译环境,本人安装的VS中VC的vcvars64批处理文件有点难找,目录如下(仅供参考):

cd E:\develope_tools\VS_community\VC\Auxiliary\Build
E:\develope_tools\VS_community\VC\Auxiliary\Build>vcvars64.bat
**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.0.26228.4
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'

解压openssl压缩包,并进入其目录
输入以下命令:

openssl-1.1.1-pre7>perl  Configure  VC-WIN64A --prefix=你想要的目录

如果遇到了显示没有nmake或者dmake的错,按照提示输入ppm install dmake安装即可

运行完之后,会提示生成了makefile文件,之后依次输入

>nmake
>nmake test
>nmake install

等待其运行完成,这里需要等待时间较长
等待完成后会发现openssl根目录下多了一些库之类的文件,
并且在prefix中指定的路径下多了三个文件夹:


生成三个文件夹

其中bin里有openssl的可执行文件,可以通过此命令行来执行加解密等操作:


openssl.exe

如果遇到了NMAKE : fatal error U1077且返回代码为0x20的错误,可能是未成功初始化编译环境造成,确认vcvars64.bat是否执行正确

在VC中加入openssl

打开VS,新建一个项目

注意,需要在编译运行的时候设置为x64模式:


编译选项

项目>属性>C/C++>常规>附加包含目录中加入include文件夹:

添加头文件库
项目>属性>链接器>常规>附加库目录中加入lib文件夹:
链接器
项目>属性>链接器>输入>附加依赖项中加入lib文件名:
链接依赖项
配置完成,可以开始编写代码了。
编写如下一个小的demo尝试运行:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <openssl/md5.h>

int main() {
    printf("hello openssl!");
    //int MD5_Init(MD5_CTX *c);
    //int MD5_Update(MD5_CTX *c, const void *data, size_t len);
    //int MD5_Final(unsigned char *md, MD5_CTX *c);
    MD5_CTX c;
    unsigned char md[MD5_DIGEST_LENGTH];
    char buff[] = "hello";
    unsigned long len = strlen(buff);
    MD5_Init(&c);
    MD5_Update(&c, buff, len);
    MD5_Final(md, &c);
    printf("\n");
    for (int i = 0; i < MD5_DIGEST_LENGTH; i++)
    {
        printf("%02x ", md[i]);
    }
    system("pause");
    return 0;
}

成功得到结果:


运行结果

虽然可以成功运行,但是有警告:


警告

进入调试>选项>常规,勾选“启用源服务器支持”,
进入调试>选项>符号,勾选“Microsoft符号服务器”。
警告解决。

上一篇下一篇

猜你喜欢

热点阅读