在Windows上使用SSL和预构建Boost构建Mongo-Cpp驱动程序

Build Mongo Cpp driver with SSL and prebuild Boost on Windows

本文关键字:构建 Boost Mongo-Cpp 驱动程序 SSL Windows      更新时间:2023-10-16

我在Windows上使用--SSL选项构建Mongo遗留Cpp驱动程序时遇到问题。

问题是,我使用的是Boost库的预构建版本,因此,正如mongo驱动程序构建文档页面上详细介绍的那样,我必须使用-libpath-cpppath选项来指向Boost库和头,而不是-emppath

由于升压安装在预构建的二进制文件中的布局,不能使用--extrapath SCons标志来通知boost二进制文件的安装路径。相反,您应该使用--cpppath标志指向所选boost安装路径的根,--libpath指向适当命名的库boost安装的子目录。

但我还需要-libpath-cpppath来指向OpenSSL库。我试过:

  • 将路径与";"组合ex--libpath="c:\boost path\lib;c:\openssl path\lib"

  • 两次指定--libpath--cpppath,各指定一个路径

  • 设置环境变量LIBPATHCPPPATH

似乎都不起作用,这取决于先出现的内容。我收到了一个关于找不到Boost或找不到SSL的构建警告。

如何指定两者?

遗留驱动程序构建系统采用多种形式设置库和包含搜索路径。这里要使用的是LIBPATHCPPPATH Scons变量,它们是在调用Scons之后设置的。多个参数在带引号的字符串中用空格分隔。尝试以下操作:

scons --ssl CPPPATH="c:boost-pathinclude c:openssl-pathinclude" LIBPATH="c:boost-pathlib c:openssl-pathlib"