MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Bagaimana saya bisa membangun program menggunakan driver c ++ dari mongodb?

Cara membangun driver MongoDB C++

Solusi ini berhasil pada mesin dengan karakteristik berikut:

  1. Windows XP SP3 32-bit
  2. Visual Studio Express 2010 (VC 10)

Saya menggunakan D:\MongoDBcplusplusClient sebagai direktori kerja (saya menginstal semua prasyarat di sana).

Proses:

  • Langkah 1

Unduh driver MongoDB C++:

https://github.com/mongodb/mongo-cxx-driver

Anda dapat membuat klon menggunakan Git atau mengunduhnya sebagai file .zip (saya melakukan yang kedua). Anda akan mendapatkan file seperti mongo-cxx-driver-legacy.zip. Ekstrak ke folder mongo-cxx-driver-legacy di dalam direktori kerja Anda.

  • Langkah 2

Unduh Boost binari windows bawaan. PERHATIAN!!! Anda harus menggunakan versi Boost tertentu. Dalam kasus saya, versi 1.52 berhasil. Anda dapat mengunduhnya dari sini:

http://boost.teeks99.com/

Saya mengunduh exe self-extracting boost_1_52_0-vc32-bin.exe. Letakkan di direktori kerja Anda dan jalankan. Ini akan membuat folder (seperti lib32) yang akan berisi binari boost (file .lib dan .dll)

  • Langkah 3

Unduh kode sumber Boost (file .h). Tentu saja ini harus dari versi yang sama seperti pada Langkah 2. Saya mengunduhnya dari sini:

http://sourceforge.net/projects/boost/files/boost/1.52.0/

Anda akan mendapatkan file boost_1_52_0.zip yang dapat Anda ekstrak di folder boost_1_52_0.

  • Langkah 4

Unduh Python. Dalam contoh ini saya mengunduh versi 2.7.9 dan khususnya penginstal Windows x86 MSI dari sini:

https://www.python.org/downloads/release/python-279/

  • Langkah 5

Unduh Scons dari sini:

http://www.scons.org/download.php

Saya mengunduh penginstal Windows (scons-2.3.4-setup.exe) dan menginstal Scons di direktori Python (dalam kasus saya C:\Python27).

  • Langkah 6

Unduh msinttypes dari sini:

https://code.google.com/p/msinttypes/

(Anda harus menyertakan file header ini ke proyek yang menggunakan driver)

  • Langkah 7

Pergi ke Start->Run… dan di kotak Run tulis cmd. Di jendela prompt perintah yang terbuka, navigasikan ke folder tempat Anda mengekstrak driver mongo pada Langkah 1. Dalam kasus saya, saya melakukannya:cd D:\ D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driver-legacy

  • Langkah 8

Bangun driver menggunakan Scons. Di direktori yang Anda navigasikan pada Langkah 7, tulis:

konsens

--prefix=D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driver-legacy

--cpppath=D:\MongoDBcplusplusClient\boost_1_52_0\boost_1_52_0

--libpath=D:\MongoDBcplusplusClient\lib32

--win-version-min=xpsp3 instal

dan tekan Enter.

--awalan flag menentukan direktori target tempat file .lib driver akan dibuat, --cpppath menentukan folder tempat file header Boost berada dan --libpath jalur ke file Boost .lib. Tentu saja Anda harus mengubah jalur ke jalur Anda. File bernama libmongoclient-s.lib akan dibuat di --prefix/lib path .Jika Anda ingin membangun driver dengan debugging diaktifkan, Anda harus menggunakan perintah berikut:

konsens

--prefix=D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driver-legacy

--cpppath=D:\MongoDBcplusplusClient\boost_1_52_0\boost_1_52_0

--libpath=D:\MongoDBcplusplusClient\lib32

--win-version-min=xpsp3

--dbg=saat pemasangan

File bernama libmongoclient-sgd.lib akan dibuat di --prefix/lib jalan.

  • Langkah 9

Di Windows Explorer, navigasikan ke folder tempat driver MongoDB C++ diinstal, masuk ke lib subfolder (dalam kasus saya ini adalah D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driver-legacy\lib) dan ganti nama file libmongoclient-s.lib ke mongoclient.lib dan libmongoclient-sgd.lib ke mongoclient-gd.lib .

  • Langkah 10

Buka Visual Studio 2010 Express dan buka proyek di mana Anda ingin menggunakan driver MongoDB C++. Anda harus menentukan dependensi. Klik kanan pada nama proyek di solution explorer (kolom kiri) dan tekan Properties. Buka C/C++ → Umum dan di Direktori Sertakan Tambahan tambahkan:

a) Tingkatkan direktori file header (dalam kasus saya D:\MongoDBcplusplusClient\boost_1_52_0\boost_1_52_0)

b) Direktori file header driver MongoDB C++ (dalam kasus sayaD:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driverlegacy\include)

c) Cstdint mengetikkan direktori file header (dalam kasus saya:\MongoDBcplusplusClient\msinttypes-r26 )

  • Langkah 11

Buka Linker → Umum dan di Direktori Perpustakaan Tambahan tambahkan:

a) Tingkatkan direktori file .lib (dalam kasus saya D:\MongoDBcplusplusClient\lib32)

b) Direktori file .lib driver MongoDB C++ (dalam kasus saya D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driver-legacy\lib)

Setelah langkah-langkah ini, proyek yang menggunakan driver akan berhasil dibangun baik dalam konfigurasi rilis maupun debug.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Model.find().toArray() mengklaim tidak memiliki metode .toArray()

  2. MongoDB menambah bergabung dengan bidang koleksi dari basis satu

  3. Cara menggunakan kembali koneksi mongodb melalui Promise

  4. Tidak bisa mendapatkan allowDiskUse:True untuk bekerja dengan pymongo

  5. Mongoose:Dapatkan daftar lengkap pengguna