boost installation
-
ich habe boost extrahiert und mit jam den installprozess gestartet[bjam "sTOOLS=mgw" install
Am Ende hatte ich das raus:
...failed updating 948 targets...
...skipped 412 targets...
...updated 3785 targets...Ich finde das ist eine nicht so gute Statistik. Woran liegt das? Habe ab und zu auf die Console geguckt und sah vc.. blablabla
-
mgw als Toolsparameter ist ja auch falsch!
-
Dieser Thread wurde von Moderator/in Marc++us aus dem Forum Themen rund um den PC in das Forum C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
da steht doch:
mingw mgw
oder meint er:
http://www.boost.org/tools/build/v1/mingw-tools.html
wie würde es dann aussehen wäre mein include folder in C:\mingw\include?
-
-sMINGW_ROOT_DIRECTORY=C:\mingw
-
ich habe es jetzt einmal so gemacht:
boost in C:\boost_1_33_1 extrahiert dann bjam reinkopiert. danach in der kommandozeile:
bjam "-sMINGW_ROOT_DIRECTORY=C:\codeblocks" install
eingegeben.
dann kam eine fehlermessage wegen boost.phyton.
danach das lange warten und die statistik, die noch die alte war.
was mach ich also falsch?
-
kann es sein, dass das so richtig ist?
-
hast du den libs und dlls?
-
ich hab einen boost ordner. da gibt es die ordner lib und include. in lib ist nichts drin. in include an die 20mb.
-
Jetzt fehlt aber das Toolset. Der Aufruf müsste dann so aussehen.
bjam "-sTOOLS=mingw" "-sMINGW_ROOT_DIRECTORY=C:\codeblocks" installoder mit mehr Einstellungen
bjam "-sTOOLS=mingw" "-sBUILD=debug release <runtime-link>static/dynamic" "-sALL_LOCATE_TARGET=c:\temp" "-sMINGW_ROOT_DIRECTORY=C:\codeblocks" installIst denn dein Compiler wirklich unter C:\codeblocks zu finden? Da müsste z.Bsp. dieses hier zu finden sein
mingw32-c++.exe
-
C:\codeblocks\bin
-
Dann müssten die von mir geposteten bjam-Aufrufe funktionieren.
-
scheint zu funktionieren. danke.
-
hat alles funktioniert. habe in der dokumentation geschnüffelt und habe bei boost::filesystem nicht beschriebene funktionen gefunden:
fs::path full_path( fs::initial_path() );
full_path = fs::system_complete( fs::path( argv[1], fs::native ) );was ist initial_path und system_complete?
und was haben die sich bei leaf gedacht:
dir_itr->leaf()???
danke, das wars dann
-
Sowohl initial_path als auch system_complete sind in der Dokumentation beschrieben (in der operations.hpp).
initial_path gibt im allgemeinen das derzeit eingestellte Verzeichnis (current dir) zurück. Beim Start eines Programmes ist das meistens das verzeichnis in dem sich das Programm befindet. Klappt aber nicht immer.
system_complete soll anhand der Current Directory den dem Betriebssystem entsprechneden vollständige Pfad bezogen auf den übergebenen zurückgeben.
leaf() liefert einfach einen string (std::string) auf das am weitesten rechts stehende Element (im allgemeinen der Dateiname) zurück.
Probiers einfach mal aus.
-
habs auch schon gefunden. zu voreilig gepostet. aber warum haben sie es leaf genannt und nicht anders?
-
Weil Leaf u.a. auch Blatt heißt (vom Baum das Blatt), und da ein Dateisystem nunmal baumartig aufgenaut ist, ist das letzte Element an einem Ast eine Datei, also Leaf (du kannst an eine Datei nichts mehr anhängen).