2021-05-05 集成mongoDBCXX Driver至Qt开发环境 (一)

根据官方的文档文档,想要在Qt C++中使用mongoDB 驱动,需要从源码进行编译。因为C++的driver依赖于C driver,因此需要先编译C driver.

1、编译mongoDB C Driver

具体的编译步骤,也可参考官网:Installing the MongoDB C Driver (libmongoc) and BSON library (libbson) — libmongoc 1.17.5。如果觉得英文看着费劲,跟着我下面的步骤也没问题。

1.1 下载源码

这里我使用的是1.17.5,下载并解压到一个文件夹中。

1.2 使用CMake编译源文件

这里我使用的CMake版本是3.20.1,VS是2017,在CMake Configure时记得选X64,如下图所示:


image.png

1.3 CMake中需要更改的地方

-DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF 如下图:


image.png

-DCMAKE_BUILD_TYPE=Release 如下图:


image.png

1.4 使用vs2017 编译

打开用CMake生成的项目:


image.png

确保编译目标是x64和release


image.png

点击生成解决方案


image.png

当编译完成后,选择右侧的INSTALL,并生成INSTALL
image.png

至此,c driver编译成功,在上面设置的install 目录中就是编译好的库文件,如下图所示:


image.png

2、编译mongoDB C++ driver

2.1 下载源码

可以在github上找到发布的所有版本,Releases · mongodb/mongo-cxx-driver (github.com)。 这里我选择的是3.6.3

2.2 下载boost

在这里可以看到和下载所有的boost版本Boost C++ Libraries - Browse /boost-binaries at SourceForge.net,我这里使用的是1.7.4

2.3 CMake中需要更改的地方

设置boost路径,增加CMAKE_CXX_FLAGS, /Zc:__cplusplus 如下图所示:


image.png

设置Install目录,以及c driver相关的目录,如下图所示:


image.png

2.4 使用vs 2017编译

打开CMake生成的工程文件,同样确保编译目标是X64和release


image.png

同样点击生成->生成解决方案,完成编译后,在INSTALL选项下右键 -> 仅用于项目->仅生成INSTALL
完成后就会在我们设置的install目录下生成我们所需的库文件


image.png

至此我们就完成了mongoDB C++ Driver的编译,可以用在我们的Qt项目中了,具体怎么去设置将在下一篇文章中讲到。

如果觉得帮到了您,还希望能点个赞!
也欢迎留言沟通~

你可能感兴趣的:(2021-05-05 集成mongoDBCXX Driver至Qt开发环境 (一))