VS2010编译MONGODB C 驱动

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


项目属性配置属性C/C++代码生成运行库,设置为 MTD 模式, 如下:

项目属性配置属性链接器输入附加依赖库,添加
boost_program_options-vc100-mt-gd-1_49.lib boost_thread-vc100-mt-gd-1_49.lib boost_date_time-vc100-mt-gd-1_49.lib boost_system-vc100-mt-gd-1_49.lib boost_filesystem-vc100-mt-gd-1_49.lib libboost_date_time-vc100-mt-gd-1_49.lib libboost_system-vc100-mt-gd-1_49.lib libboost_filesystem-vc100-mt-gd-1_49.lib libboost_program_options-vc100-mt-gd-1_49.lib
libboost_thread-vc100-mt-gd-1_49.lib libboost_date_time-vc100-mt-sgd-1_49.lib libboost_system-vc100-mt-sgd-1_49.lib libboost_filesystem-vc100-mt-sgd-1_49.lib libboost_program_options-vc100-mt-sgd-1_49.lib libboost_thread-vc100-mt-sgd-1_49.lib mongoclient.lib
2.VS2010 编译环境配置
要执行 test.cpp 文件,需要做以下环境配置: 项目属性配置属性调试工作目录, 添加 boost 编译生成的 dll 文件 目录 C:\boost\stage\lib,如下:
这样可以省去在执行.exe 文件时将.dll 文件复制到执行目录中的步骤。 项目属性配置属性VC++目录包含目录中,添加:
2. 安装编译 boost 库
(1) 下载 boost 1.49 库 (2) 编译 boost 1.49 , 具体步骤如下: 将下载到的 boost_1_49_0.zip 压缩包直接解压到 C 盘,文件夹 boost_1_49_0 重命名为 boost,得到 C:\boost\. 在 C:\boost\下直接双击 bootstrap.bat 执行, 在 C:\boost\下生成 b2.exe、 bjam.exe 两个文件。 开始所有程序Microsoft Visual Studio 2010Visual Studio ToolsVisual Studio 命令提示(2010)进入指令窗口(保证在 VS2010 环 境下) , cd 到 C:\boost\目录下, 执行编译指令: bjam stage variant=debug
3.整理 mongoclient 依赖环境
将源码中 D:\soft\mongodb2.4.3\mongodb-src-r2.4.3\src\mongo 复制到 D:\soft\mongodb2.4.3\mongodb-src-r2.4.3\build\win32\32\dd\client_ build 下作为应用程序的头文件目录,形成. D:\soft\mongodb2.4.3\mongodb-src-r2.4.3\build\win32\32\dd\client_ build\mongo、 D:\soft\mongodb2.4.3\mongodb-src-r2.4.3\build\win32\32\dd\client_ build\ mongoclient.lib.
2.编译 mongodb 源文件
在 D:\soft\mongodb2.4.3\mongodb-src-r2.4.3 目录下输入指令 scons –-dd --32 mongoclient.lib 开始编译源文件。(注:指令中—dd 表明编 译的为 debug 版本,若编译 release 版本,将--dd 换做--release,--32 表明 编译的 32 为系统的,若想编译 64 位系统的,将—32 换做--64) 编译后在 D:\soft\mongodb2.4.3\mongodb-src-r2.4.3\build\win32\32\dd\client_ build\生成 mongoclient.lib.
3. 下载 MongoDB 源码
下载 Mongodb 2.4.3 源码, 得到 mongodb-src-r2.4.3.tar.gz, 解压缩到指定目 录,此处我放在 D:\soft\mongodb2.4.3\下,得到 D:\soft\mongodb2.4.3\mongodb-src-r2.4.3。
二、编译 MoBiblioteka goclient.libVS2010 编译 mongodb C++ 驱动 一、安装程序
1. 安装 mongodb,scons 和 python
(1) 下载 python2.7, 使用 x86_32 位,因为 scons 只有 32 位安装包可用; (2) 下载 scons2.3.0; (3) 安装 python 和 scons, 默认安装在 C:\Python27 下,修改环境变量,将 C:\Python27\Scripts 写入 PATH; (4) 下载安装 pywin32 。 (5) 安装 mongodb2.4.3,安装在 D:\soft\mongodb2.4.3 目录下,可参考文档 Mongndb 数据库安装手册 。 (6) 下载安装 Microsoft Visual Studio 2010。
D:\soft\mongodb2.4.3\mongodb-src-r2.4.3\build\win32\32\dd C:\boost 两个目录 项目属性配置属性VC++目录库目录中,添加
D:\soft\mongodb2.4.3\mongodb-src-r2.4.3\build\win32\32\dd\client_ build C:\boost\stage\lib 两个目录,如下:
三、 mongoclient 应用程序测试
1.使用 vs2010 搭建控制台工程
在 VS2010 中新建控制台工程 mongodb_test, 在工程中新建 test.cpp 文件, 如下所示:
其中,test.cpp 文件的内容如下:
#include <cstdlib> #include <iostream> #include "mongo/client/dbclient.h" void run() { mongo::DBClientConnection c; c.connect("localhost"); //your host IP address } int main() { try { run(); std::cout << "connected ok" << std::endl; } catch( const mongo::DBException &e ) { std::cout << "caught " << e.what() << std::endl; } while(1){} return EXIT_SUCCESS; }
--with-filesystem --with-thread --with-date_time --with-program_options --layout=versioned threading=multi toolset=msvc-10.0 --build-type=complete 开始编译(红色字体出表明编 译的 debug 版本,若编译 release 版本,将红色字换做 release,对应的是 32 位操作系统),编译完成后,在 C:\boost\stage\lib 目录下生成 5 个 dll 和 15 个 lib 文件,如下图:
ws2_32.lib psapi.lib Dbghelp.lib 即 15 个 lib 文件夹中的.lib 文件的文件名, 和另外 3 个.lib 文件名 (解决编译报 错问题) 项目属性配置属性链接器输入忽略特定默认库,添加
Msvcrtd,如下:
3.测试结果
编译运行测试程序,输出“connected ok”,表明 mongoclient 编译没有问题, 如下所示:
1. 准备 C++编译环境
开始所有程序Microsoft Visual Studio 2010Visual Studio ToolsVisual Studio 命令提示(2010)进入指令窗口 (保证在 VS2010 环境下) , cd 进入到 D:\soft\mongodb2.4.3\mongodb-src-r2.4.3 目录下。
相关文档
最新文档