mongodb引用到了openssl和bson庫,因此先要安裝這2個庫, 還需要用到cmake生成vs項目, 這裏cmake的安裝就直接忽略了, 有需要的同學可自行百度。
1. 下載perl, 點擊打開鏈接
2. 下載openssl 點擊打開鏈接
3. 在openssl源碼目錄調用perl Configure VC-WIN32 生成配置
4.運行openssl\ms\do_ms.bat生成nak
5.在當前cmd窗口調用vc的vcvars32.bat生成vc環境變量
6.調用nmake -f openssl\ms\ntdll.mak即可 沒有錯誤將生成成out32dll下的文件(nmake在vc所有的bin上目錄下)
7.下載mongo-c-libbson, 這個庫在驅動下載下來不知道爲什麼不在裏面,可以手動下載一次
8.在libbson目錄下執行 cmake -G "Visual Studio 12 2013" "-DCMAKE_INSTALL_PREFIX=C:\mongo-c-driver"生成項目文件
9.打開build_alll項目用vs生成即可
10.在mongo-c-driver目錄下執行 cmake -G "Visual Studio 12 2013" "-DCMAKE_INSTALL_PREFIX=C:\mongo-c-driver" "-DBSON_ROOT_DIR=C:\mongo-c-driver"
DBSON_ROOT_DIR要指向libbson生成的dll目錄,還需要設置OPENSSL_INCLUDE_DIR, OPENSSL_LIBRARIES, OPENSSL_ROOT_DIR三個環境變量,分別指向openssl的頭文件路徑 庫路徑和根目錄
我在編譯的時候還出現一個FindOpenSSL list Get empty錯誤, 把mongo-c-driver\CMakeLists.tst的第8行# include(FindOpenSSL)註釋掉就可以了