【发布时间】:2015-12-12 12:35:58
【问题描述】:
在使用静态链接的 OpenSSL 1.0.2e 开发一个小项目的过程中,我在 VS13 中遇到了一个奇怪的错误:
Error LNK2001: unresolved external symbol _BN_is_zero
当您忘记在项目属性中正确点赞 .lib 文件时,通常会发生这种情况,但所有属性都经过了双重检查 - 它们都是正确的。
配置 - Release、MT、libs 包括 MT、bh.h。
即使其中一个库没有正确链接,我应该有多个编译器错误抱怨项目中使用的所有元素的未解析外部符号,但在我的情况下,未解析的外部符号是唯一的 BN_is_zero。
在快速谷歌搜索后,没有发现任何与 openssl 错误相关的问题,我猜问题出在我的项目中。
任何提示将不胜感激。
UPD
这是一些屏幕:
【问题讨论】:
-
链接器可能会在第一个未解析的符号处停止,我不确定。发布一个屏幕截图可能会有所帮助,显示您在链接器设置中包含 OpenSSL 库的位置。
-
@JonathonReinhart 完成
标签: c visual-studio linker openssl