windows平台下安装、编译、使用mongodb C++ driver

时间:2021-08-14 04:55:22

本博客将记录在Win8.1 ,VS2013环境下编译、配置mongodb C++ driver的流程。

1.下载预备

下载Boost:http://sourceforge.net/projects/boost/files/boost-binaries/1.58.0/  注意下binary版的,即安装版的exe,我下载32位的,下载64位的编译的mongodb C++ driver总是出错,估计是因为VS2013里编译的是32位程序

下载python 2.X :https://www.python.org/downloads/release/python-2710/

下载SCons :http://www.scons.org/

下载mongodb C++ driver:https://github.com/mongodb/mongo-cxx-driver/releases   注意:也可以通过git来下载

2.安装

安装python 和SCons,傻瓜安装

安装Boost,傻瓜安装。

编译mongodb C++ driver,cmd进入你下载的mongodb C++ driver目录,键入以下命令:

scons install --cpppath=D:\boost_1_58_0 --libpath=D:\boost_1_58_0\lib32-msvc-12.0  --dbg=on --32 --dynamic-windows --sharedclient     其中cpppath代表boost的安装路径,libpath代表boost lib库的路径,dbg表示编译为debug而不是release版本。

编译结束后会在文件夹出现一个build文件夹,里面的install\include就是头文件包含目录,install\lib便是库目录。将它们分别加入VS你新建的项目之中,如何在VS工程中添加外部的包含与库目录可以自行百度,很简单。

由于这个两个目录中还有dll文件,也应该加到调试环境path中去。

完成以上就基本搞定了,启动mongodb,由以下代码测试:

#include "stdafx.h"

#include
<iostream>
#include
<cstdlib>
#include
<winsock2.h>

#include
"mongo\client\dbclient.h"


using namespace std;

void run()
{
mongo::DBClientConnection con;
con.connect(
"127.0.0.1:27017");
}



int _tmain(int argc, _TCHAR* argv[])
{
WSAData wsaData;
if (WSAStartup(MAKEWORD(1, 1), &wsaData) != 0)
{
return -1;
}

try
{
run();
cout
<< "conn ok" << endl;
}
catch (const mongo::DBException &e)
{
cout
<< "caught " << e.what() << endl;
}
getchar();
return 0;
}