scons 编译带openssl 的mongodb cxx driver legacy 的问题

来源:互联网 发布:寻侠天书突破数据 编辑:程序博客网 时间:2024/05/17 09:03

conssconf_tempconftest_9.c(3) : fatal error C1083: 无法打开包括文件: “openssl/ssl.h”: No such file or directory

在编译好mongodb c++ driver legacy版本 1.1.2. 往游戏的MongoDB数据库EndLessSwarms中插入数据的时候,开始是正常的。后面由于设置了带用户验证的过程,所以在调用DBClientConnection的时候,必须进行用户验证。这个时候连接报错,提示 必须重新编译mongodb的legacy 驱动,然后附加参数--ssl的支持。 

scons --64 --ssl   --cpppath="D:\tool\boost_1_64_0" --libpath="D:\tool\boost_1_64_0\bin\vc14\lib64"

发现Cmd提示错误。 找不到openSSL所在的header和lib文件。然后去下载openSSL,编译生成对应的库。添加到环境变量中,各种折腾还是不行。

后来在网上找到方法:https://segmentfault.com/q/1010000006224679/a-1020000006547408 这是一个新的规避路径查找的思路。

不然我开始都去修改scons construct的编译过程文件内容了。

具体策略:

我把openssl的带有。h文件目录放在cpppath指定的boost目录下,并且把dll拷贝到boost的lib里边就可以正常编译了


原创粉丝点击