Pro-Linux

Pro-Linux Diskussions- und Hilfeforum
Aktuelle Zeit: 16. Nov 2018 15:22

Alle Zeiten sind UTC+01:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: pthread_create ->
BeitragVerfasst: 10. Jun 2007 18:17 
Offline

Registriert: 14. Mai 2007 19:27
Beiträge: 70
Hallo liebe Community!

das mit dem Googlen wird mir jetzt langsam zu blöd! :?
Ich hoffe dass mir jemand von euch weiterhelfen kann!

überall lese ich dass ich einen neuen thread so erzeuge:
Code:
#include <pthread.h>

void *mythread&#40;void *args&#41;
&#123;
                 ....
&#125;

int main&#40;&#41;
&#123;
    pthread_t thread;
    pthread_create&#40;&thread, NULL, mythread, NULL&#41;;
&#125;
bei mir bringt der gcc compiler sowie der g++ compiler
beim linken den Fehler:
"undefined reference to `pthread_create'"

hat jemand ne Ahnung was ich da falsch mache?
oder muss ich irgend eine Bibliothek dazu linken?
in den manpages habe ich nichts davon gelesen.
und es wird auch in keinem tutorial das ich ergoogelt habe erwähnt!

Bitte um Hilfe:

8) pcAlko


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 10. Jun 2007 20:01 
vielleicht hilft dir folgendes aus meinem buch:
Code:
#include <process.h>
#include <stdio.h>

void funktion(void *dummy) {
...
_endthread();
}

void main() {
...
_beginthread(funktion, 0, NULL);
// durch '0' wird gleiche Stackgöße wie für Hauptthread benutzt.
...
}
&#91;code&#93;
&#91;/code&#93;


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 11. Jun 2007 10:01 
Offline
prolinux-forum-admin
Benutzeravatar

Registriert: 05. Mai 2004 7:35
Beiträge: 1238
Versuch den Compiler mit der Option "-lpthread" laufen zu lassen, damit gegen diese Bibliotheken gelinkt wird - das sollte auch in den Handbuchseiten stehen.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 27. Jun 2007 19:30 
Offline

Registriert: 14. Mai 2007 19:27
Beiträge: 70
Danke Lateralus!
das hat das Problem gelöst.

was meinst Du mit Handbuchseiten?
kannst Du mir ein gutes Buch empfehlen dass hauptsächlich auf den GCC Compiler abziehlt?
Ich muss mir sowas unbedingt einmal zulegen.
Im Internet findet man einfach nicht alles.
zur Zeit schlage ich mich gerade mit dem map Container herum
finde kein Tutorial das sich mit dem beschäftigt.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 29. Jun 2007 18:22 
Offline
prolinux-forum-admin
Benutzeravatar

Registriert: 05. Mai 2004 7:35
Beiträge: 1238
Code:
man man
erzählt dir, was Handbuchseiten sind. Es gibt zu den meisten (wenn nicht allen) C-Funktionen Handbuchseiten, einfach mal mit "apropos NAME" nach den entsprechenden Handbuchseiten suchen und dir anschauen. Manchmal steht drin, wie du das ganze linken musst. Allgemein musst du fast alles linken. (Ich denke, das war früher anders und habe nicht genug Ahnung von Compilern oder dem GCC, als das ich erklären könnte, warum.)
Allgemein gibt es aber zu jeder include-Datei NAME.h in /usr/include eine Bibliothek libNAME.a, welche in /usr/lib zu finden ist. Der eigentliche Code steht dort drin. Um also Funktionen zu finden, musst du dem gcc mitteilen, dass du gegen eine entsprechende Bibliothek linken willst. (-lpthread)

Weiter kann ich dir leider nicht helfen... Ein Buch zum GCC ist vielleicht nicht das, was du suchst - bei anderen Compilern ist das, glaube ich, ähnlich.


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 

Alle Zeiten sind UTC+01:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de