首页 > 解决方案 > 如何使用 Visual Studio 2019 和 c++ 链接 OpenSSL 库?

问题描述

我遵循了一个关于如何使用 Visual Studios 构建和链接 OpenSSL 的教程,但是在测试时我遇到了大量的链接器错误,这让我相信我在设置 OpenSSL 时可能做错了什么。

我得到的错误之一(它们看起来都非常相似): LNK2001 Not resolve extern Symbol "__imp_gethostbyname" - libcrypto.lib(libcrypto-lib-bio_addr.obj)

我总共收到了 34 条此类错误消息(很抱歉,如果我的确切错误消息的翻译不是 100% 准确,因为我的 Visual Studio 不是英文的)。

因此,我按照教程链接库的方式如下:

  1. 将包含目录路径添加到“设置->常规->其他包含目录”

  2. 将lib目录路径添加到“Linker->General->Additional Librarydirectorys”

  3. 将“libcrypto.lib”和“libssl.lib”添加到“链接器->输入->附加依赖项” 在此处输入图像描述

标签: c++visual-studioopenssl

解决方案


DLL提高了程序的可维护性,您可能需要了解动态链接库,请参考文档:创建和使用您自己的动态链接库(C++)。您可以参考评论在您的项目中添加 OpenSSL。另外,根据您的路径,您似乎正在使用静态库。


推荐阅读