mongodb c++driver 编译错误 -ssl

发布于 2022-09-03 11:40:13 字数 1962 浏览 11 评论 0

环境mongodb3.2.8 c++driver 编译错误
OS:windos
mongodb version:3.2.8

我现在用C++的driver对mongodb进项操作,发现在再用到用户认证操作的时候,会报错。

clipboard.png

要对C++驱动重新编译。需要加入参数-ssl。
前提条件,再追加这个-ssl的参数前我是可以编译通过c++这个驱动的!!!!
当我重新编译mongodb的c++驱动,命令如下
scons --64 --ssl --sharedclient --dynamic-windows --prefix="d:mongo_drive" --cpppath="C:boost" --libpath="d:mongo_driveboost_lib" install --dbg=on

编译失败。
报告的错误是:
file D:mongo_drivemongo-cxx-driver-legacySConstruct,line 1726:

Configure(confdir = build\scons\sconf_temp)

scons: Configure: Checking for SSL_version(NULL) in C library ssleay32...
buildsconssconf_tempconftest_9.c <-
|
|
|#include "openssl/ssl.h"
|
|int
|main() {
| SSL_version(NULL);
|return 0;
|}
|
cl /Fobuildsconssconf_tempconftest_9.obj /c buildsconssconf_tempconftest_9.c /nologo /EHsc /W3 /wd4244 /wd4251 /wd4267 /wd4275 /wd4290 /wd4355 /wd4800 /wd4068 /wd4351 /WX /Z7 /errorReport:none /MDd /Od /RTC1 /DMONGO_EXPOSE_MACROS /DBOOST_ALL_DYN_LINK /D_UNICODE /DUNICODE /DNOMINMAX /D_CONSOLE /D_CRT_NONSTDC_NO_WARNINGS /D_CRT_SECURE_NO_WARNINGS /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_DEPRECATE /DMONGO_DEBUG_BUILD /D_WIN32_WINNT=0x0502 /DNTDDI_VERSION=0x05020200 /DMONGO_HAVE___DECLSPEC_THREAD /D_VARIADIC_MAX=10 /Ibuildwin3264dbg_ondynamic-windowssslthird_partygtest-1.7.0include /Ibuildwin3264dbg_ondynamic-windowsssl /Ibuildwin3264dbg_ondynamic-windowssslmongo /IC:boost
conftest_9.c
buildsconssconf_tempconftest_9.c(3) : fatal error C1083: 无法打开包括文件: “openssl/ssl.h”: No such file or directory
scons: Configure: no

找不到openssl/ssl.h。

我现在把openssl的
opensslinclude和openssllib这两个目录都追加到windows的path环境变量里了,但是还是没有解决这个编译问题。想问问各位如何解决。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文