Pthreads in Windows



  • Hi

    zunächst: ich weiß, dass Pthreads nichts mit der WinAPI-zu tun haben, aber da ich PThreads unter Windows benutzen möchte, hielt ich es für sinnvoller es im Windows-Forum als im Linux-Forum zu posten.

    Ich benutze Borland C++Builder 6!

    Mein Problem: Ich habe den Auftrag herauszufinden, wie man mit Pthreads unter Windows arbeitet und ob die Funktionen unsere selbstprogrammierten Lib sich auf Pthreads übertragen lassen.

    Ich habe folgendes Tutorial gefunden und bin nun dabei das abzuarbeiten, doch ich hänge schon beim ersten Programm fest:
    https://computing.llnl.gov/tutorials/pthreads/#CreatingThreads

    Wenn ich die pthread.h inkludiere bekomme ich den Fehler:

    [C++ Fehler] Unit1.cpp(5): E2209 include-Datei 'pthread.h' kann nicht geöffnet werden
    

    Also habe ich nach der pthread.h auf meinem System gesucht und diese im Ordner
    D:\Programme\Borland\CBuilder6\Include\Stlport
    geunden. Den Pfad habe ich dann in den BCB-Projektoptionen hinzugefügt.

    Nun bekomme ich folgenden Fehler:

    [C++ Fehler] pthread.h(26): E2209 include-Datei 'oldstl/pthread.h' kann nicht geöffnet werden
    

    Internet sagt auskommentieren und schauen was passiert...

    Wenn ich das mache bekomme ich den Fehler:

    [C++ Fehler] Unit1.cpp(18): E2268 Aufruf der undefinierten Funktion 'pthread_exit'
    

    Obwohl der Aufruf so eigentlich richtig sein sollteanscheinend hat er nun Probleme mit den Funktionen der Pthreads (was eine logische Folge des Auskommentierens in einem Headerfiles sein könnte 😉 )

    Wenn ich mir die aktuelle pthread.h besorge ändert sich nichts.

    Wenn ich das gleiche in Visual Studio probiere gibts es die pthread.h nicht mal im VS-Verzeichnis

    Ihr seht ich habe schon einiges ausprobiert...aber da es bei allen anderen zu laufen scheint kann mir ja vielleicht jemand helfen 🙂

    Gruß
    Patrick

    Edit vielleicht passt der Thread doch eher ins Forum "VCL" bitte entschuldigt und verschiebt es dementsprechend (Thread selbst löschen geht wohl nicht oO )



  • So für die Suchenden und Verzweifelten...

    So habe ich es gemacht:

    Diese Seite: http://sourceware.org/pthreads-win32/

    Unter "Where can I get it" --> "Download" folgender Link: ftp://sourceware.org/pub/pthreads-win32/dll-latest

    Die Dateien im Ordner "include" runterladen (Link: ftp://sourceware.org/pub/pthreads-win32/dll-latest/include/)

    Je nach Compiler die libs und dlls aus dem ordner "lib" (gleiche Ebene wie "include") rausziehen

    Im Projekt dann die lib hinzufügen und unter den Projekteigenschaften den Pfad zu den .h-Files (im include-Ordner) hinzufügen

    Fertig...abwischen! 🙂

    Da ich ja den Borland C++ Builder benutze musste ich die lib von VC noch durch einen Konverter jagen und fertig is die Laube

    Hoffe ich konnte dem einen oder anderen noch helfen...letztendlich wars nicht schwer 😉



  • funzt, thx!!!


Anmelden zum Antworten