boost::filesystem Linker Probleme



  • Hallo,
    Ich benutze die boost library unter Windows mit NetBeans und dem Compiler MinGW.

    Ich habe boost mit bjam für das Toolset gcc kompiliert. Jetzt habe ich einen Ordner in dem alle kompilierten Libraries vorliegen und zwar immer in mehrfacher Ausführung...
    Soweit ich das verstehe hat jede Library mehrere Versionen ( Debug, Debug Multithread, Realease, Release Multithread und noch einiges mehr )

    Jetzt zum Problem: folgenden Code kann ich ohne Fehler bzw. Warnungen kompilieren, allerdings gibt wird beim Debuggen ein Sigtrap Signal gesendet.
    Das sollte nicht so sein und ich gehe davon aus, dass ich beim einbinden der Library etwas falsch mache

    #include <boost/filesystem.hpp>
    #include <iostream>
    
    int main()
    {
      boost::filesystem::path p = boost::filesystem::current_path();
      std::cout<<p;
    }
    

    Meine Linker Settings sehen so aus:
    http://yfrog.com/gilinkersettingsj

    Welche von den vielen Versionen muss ich einbinden, damit es nicht zu dem Sigtrap Problem kommt..

    Wenn irgendjemand der zufällig auch Netbeans mit MinGW benutzt das mal kurz nachvollziehen könnte wäre mir sehr geholfen,

    aber auch Infos dazu, was genau man einbinden muss, damit obiger Befehl funktioniert wären extrem hilfreich.

    Danke schonmal



  • also:
    es scheint ein Speicherzugriffproblem zu sein, welches das Signal Sigtrap verursacht.

    Wenn ich die statischen Libraries

    libboost_filesystem-mgw44-sd-1_43.a
    libboost_system-mgw44-sd-1_43.a
    

    einbinde (s steht für static, d für debug )

    und dem Linker sage, dass ich die libraries gerne statisch gelinkts hätte

    Linker--> Additional Options --> "-static"
    

    dann läuft oben gezeigter Code auch im Debugmodus tadellos
    ...

    Gruß
    zitroneneis


Anmelden zum Antworten