53 Stimmen

Gebäude Boost BCP

Ich habe versucht, eine Boost C++-Bibliotheken für die letzten zwei Stunden und stoppte ohne Ergebnis. Da ich neu in C++ bin, kann ich den Build nicht richtig erstellen. Wie kann ich es mit Visual Studio 2008 richtig erstellen?

Ich muss das BCP-Tool verwenden, um eine Teilmenge der Bibliothek zu extrahieren. Ich muss also zuerst BCP erstellen, richtig? Wie kann ich das tun? Als ich versuchte, es zu erstellen, erhielt ich die folgende Fehlermeldung

fataler Fehler LNK1104: Die Datei 'libboost_filesystem-vc90-mt-gd-1_37.lib' kann nicht geöffnet werden.

Wo kann ich die oben genannte Bibliotheksdatei erhalten?

139voto

Roderick Punkte 2303

Die aktuelle Version von Boost (1.50.0) verwendet Boost.Build. Der neue Arbeitsablauf für die Erstellung von bcp ist wie folgt:

aus dem Root-Boost-Verzeichnis ein:

bootstrap.bat

Sobald Boost.Build erstellt wurde, geben Sie ein:

b2 tools/bcp

36voto

vividos Punkte 5968

Zuerst müssen Sie die richtigen Umgebungsvariablen PATH, INCLUDE und LIB in Ihrer Befehlsshell haben. Rufen Sie dazu die Datei " vcvarsall.bat " (oder ähnlich) mit Parameter:

vcvarsall.bat x86

Als nächstes musst du bjam bauen (du kannst es auch von der Boost-Seite herunterladen, aber das geht fast genauso schnell). Gehen Sie zum tools\jam\src Ordner in Boost und geben Sie ein:

build.bat

Es sollte ein Unterordner entstehen bin.ntx86 die bjam.exe enthält. Kopieren Sie ihn der Einfachheit halber in den Boost-Hauptordner. Als nächstes können Sie bcp erstellen. Gehen Sie in den Ordner tools\bcp Ordner und Typ:

..\..\bjam.exe --toolset=msvc

Zurück im Boost-Hauptordner können Sie dann jede beliebige Bibliothek erstellen:

bjam toolset=msvc –-with-{library}

wobei {library} ist eine der zu erstellenden Bibliotheken. Alle baubaren Bibliotheken können mit angezeigt werden:

bjam –-show-libraries

Es gibt noch viele weitere bjam build-Parameter. Einige Parameter mit Schlüsselwörtern, die Sie angeben können, sind:

variant=debug|release
link=shared|static
threading=multi|single

Ein Beispiel wäre:

bjam toolset=msvc –-with-filesystem threading=multi variant=debug stage

Weitere Informationen finden Sie auf der Dokumentationsseiten verstärken .

Bearbeiten: Der Link wurde aktualisiert und verweist nun auf die neueste Boost-Dokumentation.

Bearbeiten: Korrigierte Optionen --with-{library} und --show-libraries

3voto

dvorak4tzx Punkte 313

Ich habe die Quelle extrahiert: https://github.com/district10/cmake-bcp (Sie brauchen BOOST nicht zu konfigurieren, da alle Quellcodes bereits enthalten sind).

Unter Linux, cmake + make zu bauen:

# cd source_dir
mkdir build && cd build
cmake ..
make

Unter Windows: CMake-GUI + Visual Studio zum Erstellen. Brauchen Sie Hilfe? Siehe HOWTO: Win + CMake + Visual Studio 2010 .

Meine ausführbaren Dateien:


Tipp: Wenn Sie unter Windows bei der Verwendung von Boost auf Verbindungsprobleme stoßen, überprüfen Sie die boost/config/auto_link.hpp und du wirst es verstehen. Um das Problem zu lösen, können Sie einfach die gesamte Datei auskommentieren.

0voto

Brooks Moses Punkte 8927

Beachten Sie, dass Sie Ihre Windows-Versionen von bcp nicht aus dem Quellcode bauen müssen - Sie können auch eine Binärversion von http://www.boostpro.com/download und überspringen Sie all diese Schritte.

(Oder zumindest ist das theoretisch der Fall - ich habe es nicht ausprobiert; ich habe nur diese Seite und diese hier gefunden, als ich nach einer vorgefertigten Linux-Version suchte).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X