MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie kann ich ein Programm mit dem C++-Treiber von Mongodb erstellen?

Wie man den MongoDB C++-Treiber erstellt

Diese Lösung war auf einer Maschine mit den folgenden Merkmalen erfolgreich:

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

Ich habe D:\MongoDBcplusplusClient als Arbeitsverzeichnis verwendet (ich habe dort alle Voraussetzungen installiert).

Prozess:

  • Schritt 1

Laden Sie den MongoDB C++-Treiber herunter:

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

Sie können einen Klon mit Git erstellen oder ihn als .zip-Datei herunterladen (ich habe die zweite gemacht). Sie erhalten eine Datei wie mongo-cxx-driver-legacy.zip. Extrahieren Sie es in den Ordner mongo-cxx-driver-legacy in Ihrem Arbeitsverzeichnis.

  • Schritt 2

Laden Sie die vorgefertigten Windows-Binärdateien von Boost herunter. ACHTUNG!!! Sie sollten eine bestimmte Version von Boost verwenden. In meinem Fall hat die Version 1.52 den Trick getan. Sie können es hier herunterladen:

http://boost.teeks99.com/

Ich habe die selbstextrahierende exe boost_1_52_0-vc32-bin.exe heruntergeladen. Legen Sie es in Ihr Arbeitsverzeichnis und führen Sie es aus. Es wird einen Ordner (etwas wie lib32) erstellen, der die Boost-Binärdateien (.lib- und .dll-Dateien) enthält

  • Schritt 3

Laden Sie den Boost-Quellcode (.h-Dateien) herunter. Diese sollten natürlich von der gleichen Version sein wie in Schritt 2. Ich habe sie hier heruntergeladen:

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

Sie erhalten eine Datei boost_1_52_0.zip, die Sie im Ordner boost_1_52_0 extrahieren können.

  • Schritt 4

Python herunterladen. In diesem Beispiel habe ich Version 2.7.9 und speziell das Windows x86 MSI-Installationsprogramm von hier heruntergeladen:

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

  • Schritt 5

Laden Sie Scons hier herunter:

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

Ich habe das Windows-Installationsprogramm (scons-2.3.4-setup.exe) heruntergeladen und Scons im Python-Verzeichnis installiert (in meinem Fall C:\Python27).

  • Schritt 6

Laden Sie msinttypes hier herunter:

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

(Sie sollten diese Header-Dateien in das Projekt einfügen, das den Treiber verwendet)

  • Schritt 7

Gehen Sie zu Start->Ausführen… und schreiben Sie in das Feld Ausführen cmd. Navigieren Sie im geöffneten Eingabeaufforderungsfenster zu dem Ordner, in dem Sie den Mongo-Treiber in Schritt 1 extrahiert haben. In meinem Fall habe ich Folgendes getan:cd D:\ D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driver-legacy

  • Schritt 8

Erstellen Sie den Treiber mit Scons. Schreiben Sie in das Verzeichnis, in dem Sie in Schritt 7 navigiert sind:

Nachteile

--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 installieren

und drücken Sie die Eingabetaste.

Das --Präfix Flag gibt das Zielverzeichnis an, in dem die .lib-Datei des Treibers erstellt wird, --cpppath gibt den Ordner an, in dem sich die Boost-Header-Dateien befinden, und den --libpath den Pfad zu den .lib-Dateien von Boost. Natürlich sollten Sie den Pfad zu Ihrem ändern. Eine Datei namens libmongoclient-s.lib wird unter --prefix/lib path erstellt .Wenn Sie den Treiber mit aktiviertem Debugging erstellen möchten, sollten Sie den folgenden Befehl verwenden:

Nachteile

--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=on install

Eine Datei namens libmongoclient-sgd.lib wird unter --prefix/lib erstellt Pfad.

  • Schritt 9

Navigieren Sie im Windows Explorer zu dem Ordner, in dem der MongoDB C++-Treiber installiert ist, gehen Sie in den Unterordner lib (in meinem Fall war dies D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driver-legacy\lib) und Benennen Sie die Datei in libmongoclient-s.lib um zu mongoclient.lib und die libmongoclient-sgd.lib zu mongoclient-gd.lib .

  • Schritt 10

Öffnen Sie Visual Studio 2010 Express und öffnen Sie das Projekt, in dem Sie den MongoDB-C++-Treiber verwenden möchten. Sie sollten die Abhängigkeiten angeben. Klicken Sie mit der rechten Maustaste auf den Namen des Projekts im Projektmappen-Explorer (linke Spalte) und klicken Sie auf Eigenschaften. Gehen Sie zu C/C++ → Allgemein und fügen Sie unter Zusätzliche Verzeichnisse hinzufügen:

hinzu

a) Boost-Header-Dateiverzeichnis (in meinem Fall D:\MongoDBcplusplusClient\boost_1_52_0\boost_1_52_0)

b) Header-Dateiverzeichnis des MongoDB-C++-Treibers (in meinem Fall D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driverlegacy\include)

c) Cstdint-Typen Header-Dateiverzeichnis (in meinem Fall:\MongoDBcplusplusClient\msinttypes-r26 )

  • Schritt 11

Gehen Sie zu Linker → General und fügen Sie bei Additional Library Directories hinzu:

a) Boost .lib-Dateiverzeichnis (in meinem Fall D:\MongoDBcplusplusClient\lib32)

b) Verzeichnis der .lib-Dateien des MongoDB-C++-Treibers (in meinem Fall D:\MongoDBcplusplusClient\mongo-cxx-driver-legacy\mongo-cxx-driver-legacy\lib)

Nach diesen Schritten wird das Projekt, das den Treiber verwendet, sowohl in der Release- als auch in der Debug-Konfiguration erfolgreich erstellt.