编译MongoDBClientDriver


环境:VS2013,Win7 64位,Python2.764位,Scon 2.35 64位,ActivePerl 32位。


  1. 下载MongoDB CXXDrvier源码:https://github.com/mongodb/mongo-cxx-driver/tree/legacy-1.1.2,只能下这个。高版本的必须要VS2015。解压
  2. 下载boost。https://sourceforge.net/projects/boost/files/boost/1.58.0/,这是安装版。直接点击安装,比如安装到C:\boost
  3. 编译openssl:
    1. >perl Configure VC-WIN64A --prefix=d:\openssl\win64
    2. ms\do_nasm
    3. ms\do_win64a
    4. nmake -f ms\ntdll.mak
    5. nmake -f ms\ntdll.mak install
  4. 进入mongo-cxx-driver-legacy-1.1.2,由于我要使用64位的库,所以执行命令:>D:\Project\Server\branches\mongo-cxx-driver-legacy-1.1.2>scons --cpppath="c:\boost" --libpath="C:\boost\lib64-msvc-12.0" --64 --sharedclient --dynamic-windows --dbg=on --c++11=on --ssl --extrapath="D:\openssl\win64" --prefix="c:\mongoclient" install
  5. 如果要调试客户端程序,必须要把boost目录下的lib64-msvc-12.0所有*_gd_.dll和D:\openssl\win64\bin\下的dll拷贝到VC项目里的\x64\Debug目录下,而且在VC中指定各种目录。

下面的工作跟MongoDB无关,但是很有用:

  1. Poco C++ 1.7.6库,编成64位的:修改build_vs_120.cmd成以下的样子:@echo off
    if defined VS120COMNTOOLS (
    call "%VS120COMNTOOLS%\vsvars64.bat")
    buildwin 120 build shared both X64 samplesbuildwin 120 build all both x64 smaples

你可能感兴趣的:(编译MongoDBClientDriver)