[dev-cpp] Boost test klappt nicht !!!
-
Hallo,
wollte mich jetzt mal mit der Boost Lib beschäftigen.
Habe es mit Hilfe des Package Manager installert...
DevPak von hier geladen: http://devpaks.org/show.php?devpak=94-Installiert und dann das Beispiel getestet:
#include <iostream> #include <boost/thread/thread.hpp> using namespace std; void function1() { for(int i=0; i<10000; i++) cout << "huhu: " << i << endl; } void function2() { for(int i=0; i<10000; i++) cout << "lala: " << i << endl; } int main() { boost::thread t1(&function1); // Thread-Objekt t1 erstellen und function1() starten. function2(); // t1 läuft gleichzeitig weiter, während function2() aufgerufen wird! return 0; }
Und siehe da, lauter Fehlermeldungen:
2 d:\Dev-Cpp\include\boost\thread\thread.hpp:17, from D:\Dev-Cpp\bin\test.cpp In file included from d:/Dev-Cpp/include/boost/thread/thread.hpp:17, from D:\Dev-Cpp\bin\test.cpp 2 D:\Dev-Cpp\bin\test.cpp from D:\Dev-Cpp\bin\test.cpp 2 D:\Dev-Cpp\bin\test.cpp -pthread (Linux), -pthreads (Solaris) or -mthreads (Mingw32)" 2 d:\Dev-Cpp\include\boost\thread\thread.hpp:21, from D:\Dev-Cpp\bin\test.cpp In file included from d:/Dev-Cpp/include/boost/thread/thread.hpp:21, from D:\Dev-Cpp\bin\test.cpp 2 D:\Dev-Cpp\bin\test.cpp from D:\Dev-Cpp\bin\test.cpp 60 d:\Dev-Cpp\include\boost\thread\mutex.hpp variable or field `do_lock' declared void 60 d:\Dev-Cpp\include\boost\thread\mutex.hpp expected `;' before '(' token 61 d:\Dev-Cpp\include\boost\thread\mutex.hpp variable or field `do_unlock' declared void 61 d:\Dev-Cpp\include\boost\thread\mutex.hpp expected `;' before '(' token usw...
Was nun??
-
Gib als Compilerswitch -mthreads an.
-
YASC schrieb:
Gib als Compilerswitch -mthreads an.
-->Such,Such,Such :::::::: Nix Finden !!!
Wo kann ich das denn angeben ???????
-
Projekt->Projekt-Optionen->Parameter->C++Compiler->eingeben->OK->Rebuild
Frei aus dem Englischen übersetzt, kein Anspruch auf Korrektheit
-
D:\Dev-Cpp\main.o(.text+0x23a) In function `main': [Linker error] undefined reference to `_imp___ZN5boost6threadC1ERKNS_9function0IvSaINS_13function_baseEEEE' [Linker error] undefined reference to `_imp___ZN5boost6threadD1Ev' [Linker error] undefined reference to `_imp___ZN5boost6threadD1Ev' D:\Dev-Cpp\main.o(.text+0x23a) ld returned 1 exit status D:\Dev-Cpp\Makefile.win [Build Error] [testi.exe] Error 1
-
mit "libboost_thread-mgw-mt-s-1_32.lib" linken
->bei Linker eintragen mit vollem Pfad, bei mir z.B.:
C:/DevCpp/lib/boost/libboost_thread-mgw-mt-s-1_32.lib
-
So hab ich gemacht! Bei mir siehts so aus:
---> lib/boost_thread-mgw-mt-1_31.lib
Ist da wo auch die ganzen anderen Libs sind...
Kann das Prog jetzt zwar kompilieren
aber beim ausfähren des Programms kommt die Windows-Fehlermeldung:
... DLL boost_thread-mgw-mt-1_31.dll nicht gefunden ....
Die Datei ist in lib/dlls .
Wie krieg ich den Linker dazu das er die nimmt ???
-------------------------------------------------------
Viele Fragen, weil ich erst heute richtig angefangen habe mich mit den Dev cpp compiler zu beschäftigen.
-
kopier die dll datei ins verzeichnis der exe oder ins windows verzeichnis
-
Na endlich es klappt. Vielen Vielen Dank an YASC
Und natürlich auch ein bisslan Mr. Pünktchen.