系列文章目录
- 在CentOS上安装Mongodb
- 在Windows上编译Mongodb的cpp驱动
- vs的相关配置
- cpp连接Mongodb的简单操作
前言
注:本文默认你已安装过Cmake。
编译cpp驱动的流程如下:
- 下载Cmake是因为,Mongodb所有的驱动全是源代码,需要Cmake生成本地编译器能识别的项目文件。(嗯,至少我是这么理解的)
- 下载c驱动是因为,c++代码接口库是在mongo-c-driver的基础上进行二次封装的
一、下载Mongodb的c驱动和cpp驱动
需要注意的是,不要直接下载master的内容,而是选择最新或者次新的版本:
二、编译c驱动
1.把下载的包解压到相应目录
我的目录是E:\MongodbCode\mongo-c-driver-1.17.2
2.创建编译输出文件C:\mongo-c-driver
我的目录是C:\mongo-c-driver
注:该文件必须手动创建,否则编译会出错!
3.Cmake
1) win+R打开命令行
2)cd 到解压目录
注:网上很多教程是cd到解压目录的build文件里,但我使用cmake编译时会报错,所以建议还是直接到解压目录。
3)执行cmake命令
cmake -G "Visual Studio 16 2019" "-DCMAKE_INSTALL_PREFIX=C:\mongo-c-driver" "-DCMAKE_PREFIX_PATH=C:\mongo-c-driver" -DBUILD_VERSION="3.19.0-rc3"..
注意:
- DBUILD_VERSION可以通过
cmake --version
命令查看 - 如果系统无法识别cmake命令,需将你cmake下载目录下的bin文件路径添加到系统环境变量中
4.使用VS编译
1)用VS打开项目文件
我的目录是E:\MongodbCode\mongo-c-driver-1.17.2\mongo-c-driver.sln
2)选择Debug、x64模式
3)选中工程:ALL_BUILD并编译
由于本人已经编译成功,故部分图取自网络。
注:如果该处编译失败,请检查第二步,是否忘记创建编译输出文件!
4)选中工程:INSTALL并编译
5)编译完成,生成在C:\mongo-c-driver目录下
注:bson不需要单独编译
三、下载并安装boost库
1.下载解压至C:\boost_1_74_0
2.运行“Developer Command Prompt for VS 2019”
可以在桌面左下角的搜索框中输入vs搜索
3.执行以下命令进行编译:
cd /d "C:\boost_1_74_0"
bootstrap.bat // 执行失败需要查看bootstrap.log,成功后会得到b2.exe,
b2.exe
注:如果提示缺少MSBuild,一般都在VS\Community2019目录下,同样需要将bin文件添加至系统环境变量中
4.使用
boost的include文件目录是:C:\boost_1_74_0
boost的库文件目录是:C:\boost_1_74_0\stage\lib
四、编译cpp驱动
1.把下载的包解压到相应目录
我的目录是E:\MongodbCode\mongo-cxx-driver-r3.6.1
2.创建编译输出文件C:\mongo-cxx-driver
我的目录是C:\mongo-cxx-driver
注:该文件必须手动创建,否则编译会出错!
3.Cmake
1) win+R打开命令行
2)cd 到解压目录
3)执行cmake命令
cmake -G "Visual Studio 16 2019" "-DCMAKE_INSTALL_PREFIX=C:\mongo-cxx-driver" "-DCMAKE_PREFIX_PATH=C:\mongo-c-driver" -DBOOST_ROOT=C:\boost_1_74_0 -DCMAKE_CXX_STANDARD=11 -DCAMKE_CXX_FLAGS="/Zc:__cplusplus" -DBUILD_VERSION="3.19.0-rc3"..
4.使用VS编译
1)用VS打开项目文件
我的目录是E:\MongodbCode\mongo-cxx-driver-r3.6.1\MONGO_CXX_DRIVER.sln
2)选择Debug、x64模式
3)选中工程:ALL_BUILD并编译
4)选中工程:INSTALL并编译
5)编译失败的解决
修改工程设置,所有工程都按下图修改
6)编译完成