在windows下編譯mongodb c driver

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)註釋掉就可以了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章