windows下使用Cmake和VC 2013安裝mongodb C driver


Windows下安裝mongodb的C語言程序驅動必須借助交叉編譯軟件CMake,但是官網上的文檔對於一些細節交代的非常不清楚,昨天弄了半天,總算成功安裝了,步驟如下:

1、下載mongodb 將mongo-c-driver-1.1.4.zip源代碼解壓到d:根目錄下(此目錄路徑可根據需要選定)。

2、下載libbson庫,https://github.com/mongodb/libbson/releases/download/1.1.6/libbson-1.1.6.tar.gz,將其解壓。將解壓后的libbson-1.1.6文件夾改名為“libbson”,替換D:\mongo-c-driver-1.1.4\src\libbson目錄(mongo-c-driver自帶的原目錄為空目錄)。
3、當需要ssl功能時,下載windows下的OpenSSL相應版本(  http://slproweb.com/products/Win32OpenSSL.html ),如OpenSSL 1.0.1m,安裝在C:\OpenSSL-Win64路徑下。增加windows系統的環境變量“OPENSSL_ROOT_DIR”,值為“C:\OpenSSL-Win64”。
4、安裝CMake軟件( http://www.cmake.org ),安裝版本3.2.2。官網文檔推薦使用Visual 2010,試着用2013編譯。
5、用windows命令行的方式安裝,因此先在環境變量PATH中增加編譯器“msbuild.exe”的路徑:“C:\Program Files (x86)\MSBuild\12.0\Bin”。因為mongo-c-driver庫的安裝需要bson庫的支持,所以按先編譯bson庫,再編譯mongo-c-driver的順序進行。依次做如下操作:
1)進入bson庫目錄,該目錄下有編譯libbson的腳本文件CMakeLists.txt:
cd d:\mongo-c-driver-1.1.4\src\libbson
2)用CMake生成Visual Studio 2013的編譯環境,指定D:\mongo-c-driver目錄為bson庫最后的輸出安裝目錄。
cmake -G "Visual Studio 12 Win64" "-DCMAKE_INSTALL_PREFIX=D:\mongo-c-driver"
此時在d:\mongo-c-driver-1.1.4\src\libbson目錄下將生成libbson.sln、ALL_BUILD.vcxproj、INSTALL.vcxproj等等編譯文件。
3)注意,直接編譯 ALL_BUILD.vcxproj 會出錯,原因是其中的一個工程test-libbson.vcxproj由於字符集的原因無法編譯成功。用vs2013打開libbson.sln,在全部工程中刪去test-libbson工程,ALL_BUILD.vcxproj文件會相應的刪去該項,保存並退出。
4)編譯bson庫:
msbuild.exe ALL_BUILD.vcxproj
5)安裝bson庫:
msbuild.exe INSTALL.vcxproj
此時D:\mongo-c-driver目錄下已生成bson相應的bin、lib、include庫文件。bson庫編譯工作完成。
6)用同樣的方法繼續安裝mongo-c-driver,同樣也安裝在D:\mongo-c-driver下:
cd d:\mongo-c-driver-1.1.4
cmake -G "Visual Studio 12 Win64" "-DCMAKE_INSTALL_PREFIX=d:\mongo-c-driver" "-DBSON_ROOT_DIR=d:\mongo-c-driver"
(上面這句表示編譯mongo-c-driver的輸出位置和需要的環境變量“BSON_ROOT_DIR”值都為“d:\mongo-c-driver”)
msbuild.exe ALL_BUILD.vcxproj
msbuild.exe INSTALL.vcxproj
7)檢查d:\mongo-c-driver目錄,lib文件夾中包含了bson-1.0.lib和mongoc-1.0.lib文件,bin文件夾下是相應的動態庫,include下是頭文件。
整個編譯工作完成。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM