6

我已经从http://www.openssl.org/source/下载了最新版本的 Openssl

我想在 Visual Studio 2012 中使用它,尤其是获取文件的 md5/sha-1 哈希,但我无法使用 openssl 库包含/设置环境。老实说,我对要包含的内容和位置感到困惑,但是我已经阅读了 README-s。

我收到这个错误。

Error   1   error LNK2019: unresolved external symbol _MD5_Init referenced in function _main

所以我的问题是,我已经下载了最新版本(openssl-1.0.1e.tar.gz),我应该在 VS2012 中配置什么才能使用该库?谢谢!

更新

这个问题也帮助我找到了解决方案。使用 Visual Studio 2010 和 OpenSSL 提升 SSL

在 VS2012 中使用 openSSL 库所需的步骤:

  • 从http://slproweb.com/products/Win32OpenSSL.html下载并安装一个版本(我有 64 位操作系统,但是我安装了 32 位 openssl)。
  • VS中新建项目,然后是Configuration Properties/C/C++/General/Additional Include Directories:openssl包含文件夹(C:\OpenSSL-Win32\include)
  • 链接器/常规/附加库目录:C:\OpenSSL-Win32\lib
  • 链接器/输入/附加依赖:

libeay32.lib libeay32MTd.lib libeay32MT.lib libeay32MDd.lib libeay32MD.lib ssleay32.lib ssleay32MTd.lib ssleay32MT.lib ssleay32MDd.lib ssleay32MD.lib

(有人写道,我只需要添加与 C/C++/代码生成/运行时库匹配的那个,但它以这种方式工作。)

  • 将这些文件复制到当前的 VS 文件夹 /VC/lib
4

1 回答 1

5

你用什么编译器来编译 OpenSSL?你用过MinGW吗?如果是这样,请确保不要剥离它们(或仅使用 --strip-unneeded),否则将剥离导入符号。标头和库版本是否匹配?

也许您想尝试以下预建的:http ://slproweb.com/products/Win32OpenSSL.html这些肯定有效。

于 2013-06-15T23:39:25.450 回答