sonnenblen.de - Das unabhängige Sun User Forum
Software => Programmieren, Kompilieren => Thema gestartet von: Oxygenic am 10. Oktober 2004, 19:57:19
-
Ich versuche mit ein paar eigentlich simplen Codestückchen einen Thread zu kreieren (was unter Linux auch super klappt):
rc=pthread_attr_init(&tattr);
...
rc=pthread_attr_setdetachstate(&tattr,PTHREAD_CREATE_DETACHED);
...
rc=pthread_create(&thread1,&tattr,&WatchdogThread,(void*)&MyPID);
Hier schlägt der Aufruf von pthread_create() fehl, der Returncode rc ist -1, errno bleibt aber 0, so dass ich keinen Hinweis darauf habe, was denn schief geht.
Hat jemand eine Idee?
-
Hast du mit -mt und -lpthread compiliert/gelinkt ?
Beim gcc statt -mt: -D_REENTRANT
-
Jepp, gcc mit -D_REENTRANT und -phtread
-
und jetzt schauste mal was beim googlen nach "pthread_create() solaris" als erster Eintrag angezeigt wird ...
-
Äääh ja?
http://forum.sun.com/thread.jsp?forum=10&thread=19075&tstart=75&trange=15
Da wird die Geschichte mit -D_REENTRANT und -lpthread beschrieben, die es bei mir allerdings nicht sein kann, da ich beide Optionen gesetzt habe!
-
ohh, sorry
ich hab das "jepp" so gedeudet, dass es jetzt funktioniert
dann check mal das: http://access1.sun.com/techarticles/limit.html
-
Ich habe es mittlerweile mit der zusätzlichen Option -lposix4 hinbekommen. Wieso es damit geht - keine Ahnung....