Mongo-CXX-Driver 3.2版本编译

Mongo-CXX-Driver有3.x.x版本和Mongo-CXX-Driver-lengcy-1.x.x版本,两种版本的编译方法不一致

Mongo-CXX-Driver-lengcy-1.x.x版本是借助了生成工具SCONS,所以在源码中有SConstruct文件用于编译,Mongo-CXX-Driver有3.x.x版本使用Cmake编译,取消了SConstruct文件。

Mongo-CXX-Driver 3.x.x版本编译的官方文档https://mongodb.github.io/mongo-cxx-driver/mongocxx-v3/installation/

需要下载的文件有3个:

mongo-c-driver 下载地址: https://github.com/mongodb/mongo-c-driver (此库用于生成libmongoc,是Mongo-CXX-Driver 3.x.x版本需要的依赖项),此库的生成需要下面的库:

Libbson 库,下载地址:https://github.com/mongodb/libbson 

以及最终需要编译的Mongo-CXX-Driver有3.x.x版本文件

下载地址: https://github.com/mongodb/mongo-cxx-driver

在上面提供的链接处下载好 版本文件,我下载的是Mongo-CXX-Driver -3.2.0版本 需要的libmongoc1.9.5以上版本和libbson1.9以上版本,所以mongo-c-driver 和libbson都下载了最新的。

编译过程:

1.编译libbson

使用cmake,将源文件夹和生成路径文件夹放置好,选择编译器时我用的是vs2017 x64直接configure两次使没有红色,generate之后就可以。用管理员模式启动vs 把 test-libbson项目删除(参考的博客中要求删除,因为字符问题会导致编译错误)。

生辰->批生成,选择allbuild debug 和 release 两种,编译成功后,再生成install(使用管理员模式启动的原因就是install时会在C:\ProgramFiles\libbson文件夹创建路径生成bin /lib/include三个文件夹放置需要的内容,如果不是管理员模式会创建失败)

2。编译 mongo-c-driver

方式与上面差不多,cmake编译,但是会提示找不到libbson-1.0-config.cmake文件,就在生成的路径C:\Program Files\libbson\lib\cmake\libbson-1.0中,点击找到,再点击configure,再generate,用管理员模式启动vs 打开生成的sln文件,启动生辰->批生成,选择allbuild debug 和 release 两种,编译成功后,再生成install。会在C:\Program Files\mongo-c-driver文件夹创建路径生成bin /lib/include三个文件夹放置需要的内容

3.编译mongo-cxx-driver

方式与上面差不多,cmake编译,但是会提示找不到libbson-1.0-config.cmake文件和libmongoc-1.0-config.cmake文件

就在C:\Program Files\mongo-c-driver\lib\cmake\libbson-1.0和

C:\Program Files\mongo-c-driver\lib\cmake\libmongoc-1.0路径中。

找到这两个文件,重新configure,再generate

用管理员模式启动vs 打开生成的sln文件,启动生辰->批生成,选择allbuild debug 和 release 两种,编译成功后,再生成install。在MakeFile/install/文件夹下生成bin /lib/include三个文件夹放置需要的内容

编译结束,驱动文件都生成了。

https://download.csdn.net/download/qq_33371038/10424737 下载地址

猜你喜欢

转载自blog.csdn.net/qq_33371038/article/details/80374365