搭建VS2019+MongoDB的运行环境

涉及:编译boost库,  编译mongo-c-diver,编译mongo-cxx-diver,  配置VS2019.

注意:原文中在编译mongo-c-driver时未着重说明一些命令,会导致编译失败,此文已用大号的绿色文字标出

已编译好的x64版本可下载使用:只含bin,include,lib三个目录

链接: https://pan.baidu.com/s/1izxXcbP8U5vMGyz76e0S4w

提取码: q98v

转自:https://www.cnblogs.com/liweikuan/p/14363693.html

总结的文档  https://github.com/liweikuan123/VS-QT-MongoDB-.git

Windows VS2019编译Boost库学习记录

1.下载boost库,本人下载的是boost_1_72_0版本,下载完后解压到当前文件夹;

2.打开开始菜单,找到Visual Studio 2019文件夹里x86 Native Tools Command Prompt并打开。

3.先切换到boost解压后的目录,我这里路径是E:\Packet\boost_1_72_0,然后再执行bootstrap.bat,执行完后会在当前目录生成b2.exe可执行文件,如下图红色部分。

4.在命令框继续输入以下内容,开始编译:b2 install --toolset=msvc-14.2 --build-type=complete --prefix=“E:\Packet\boost_1_72_0\compile” link=shared runtime-link=shared runtime-link=static threading=multi debug release

备注:本人上述编译是编译整个boost库,如果只需要编译某个库或者不需要某个库可通过参数with/without 库名称去实现。
大概介绍下上述编译条件:
install 是安装头文件和库文件,后面的prefix=“E:\Packet\boost_1_72_0\compile” 也是配合install参数使用,设定生成的include和lib路径;include也可以换stage,那么只生成lib文件。
toolset=msvc-14.2 vs2019对应msvc版本为14.2,不是16开头;
上述参数可选也可不设,直接运行b2.exe;

5.编译完成后在设定的路径下生成include和lib文件夹,这样只要在使用boost库时候只要包含对应的文件即可。


以上,就是整个编译boost库过程。

Windows下VS2019 编译MongDB C++驱动

Windows下VS2019 编译 MongDB C++驱动

编译所需的库和依赖

官网手册:http://mongocxx.org/mongocxx-v3/installation/windows/

cmake下载网址:https://cmake.org/download/

mongo-c-driver下载网址:https://github.com/mongodb/mongo-c-driver/releases


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


boost下载网址:https://www.boost.org/


安装cmake,编译boost(具体步骤请百度),解压mongo-cxx-driver、mongo-c-driver

编译成C++驱动

第一步:编译mongo-c-driver


点击空白处,然后按住shift点击右键,选择“在此处打开命令窗
然后执行以下命令(创建 cmake-build文件夹,生成的工程文件就在这里面):


mkdir cmake-build
cd cmake-build
配置编译:

/*这里注意使用英文引号,原文是中文*/

/*注意最后的2个英文点,原文是3个点且是省略号,巨坑*/
cmake -G "Visual Studio 16 2019" "-DCMAKE_INSTALL_PREFIX=I:\mongo-c-driver-1.17.2" "-DCMAKE_PREFIX_PATH=I:\mongo-c-driver-1.17.2" -DCMAKE_BUILD_TYPE=Release ..

注意:win32平台命令改为:

cmake -G "Visual Studio 16 2019" -A Win32 "-DCMAKE_INSTALL_PREFIX=D:\ThirdParty\mongo-c-driver-1.18.0" "-DCMAKE_PREFIX_PATH=D:\ThirdParty\mongo-c-driver-1.18.0" -DCMAKE_BUILD_TYPE=Release ..

使用Visual Studio在Windows上构建:
cmake --build . --config Release
组件将安装到指定的路径CMAKE_INSTALL_PREFIX:
cmake --build . --config Release --target install
至此,你在I:\mongo-c-driver应该可以看到如下目录:

如果需要编译Debug版本,修改Release为Debug即可

编译【需要编译】:

1)用VS2019打开: I:\mongo-c-driver-1.17.2\mongo-c-driver-1.17.2\cmake-build\mongo-c-driver.sln

2)选择Debug、x64

3)选中工程:ALL_BUILD    点击编译菜单开始编译ALL_BUILD

选中工程:INSTALL  点击编译菜单开始编译INSTALL

编译完成,生成在i:\mongo-c-driver-1.17.2目录下


第二步:编译mongo-cxx-driver
进入对应的文件



点击空白处,然后按住shift点击右键,选择“在此处打开命令窗
配置编译:

/*原文漏了创建和进入cmake-build目录,仔细看截图你就知道了*/

mkdir cmake-build
cd cmake-build

/*原文又是中文引号和3个点的省略号,不能再掉坑了*/

/*注意cmake后面的2个英文点*/

/*原文中没有-DBUILD_VERSION,会报错*/

cmake .. -G "Visual Studio 16 2019" -DBOOST_ROOT=I:\boost_1_74_0 -DCMAKE_PREFIX_PATH=i:\mongo-c-driver-1.17.2 -DCMAKE_INSTALL_PREFIX=i:\mongo-cxx-driver-r3.6.1 -DCMAKE_BUILD_TYPE=Release "-DBUILD_VERSION=1.0.2"

构建并安装驱动程序:
cmake --build . --config Release
组件将安装到指定的路径CMAKE_INSTALL_PREFIX:
cmake --build . --config Release --target install
完成后如下图:

编译:

2)用VS2019打开: I:\mongo-cxx-driver-r3.6.1\mongo-cxx-driver-r3.6.1\cmake-build\mongo-cxx-driver.sln

2)选择Debug、x64

4)选中工程:ALL_BUILD    点击编译菜单开始编译ALL_BUILD

选中工程:INSTALL  点击编译菜单开始编译INSTALL

编译完成,生成在i:\mongo-cxx-driver-r3.6.1目录下

编译完成!VS2019的配置,后面在写。

 

VS2019的配置

  1. 将mongo-c-diver和mongo-cxx-diver下的include合并到一个include目录下,并将合并后的include放到项目目录下。

 将合并后的include放到项目目录下

 2. 将mongo-c-diver和mongo-cxx-diver下的lib目录下的lib静态库文件合并到一个lib目录下,并将合并后的lib放到项目目录下。

将合并后的lib放到项目目录下

 2.在VS中配置项目属性:配置附加包含目录,配置附加库目录,配置附加依赖。

配置附加包含目录:

       项目->属性->C/C++->常规->附加包含目录

       将boost目录和./include包含进去。

配置附加库目录:

项目->属性->链接器->常规->附加库目录

将./lib包含进去

配置附加依赖:

项目->属性->链接器->输入->附加依赖项

将项目目录下lib目录下的.lib文件包含进去

VS2019+MongoDB的配置完成!!

同时可参考另外的文章:

Mongo-c-driver驱动构建和安装https://www.cnblogs.com/music-liang/p/12779013.html

Mongo-cxx-driver驱动构建和安装https://www.cnblogs.com/music-liang/p/12780094.html

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值