Bonjour,
Voilà, j'ai une erreur qui me casse la tête.
Voici le simple bout de code que j'utilise :
Pour compiler : cc -o test test.c -lpthread
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 #include <pthread.h> #include <stdlib.h> #include <stdio.h> void* threadLambda(void* param) { struct timespec_t t; t.tv_sec = 5; t.tv_nsec = 0; nanosleep(&t, NULL); exit(0); } int main() { pthread_t thread; if (pthread_create(&thread, NULL, threadLambda, NULL) != 0) return 1; while(1); return 0; }
A la compilation, il me sort :
On dirait qu'il ne connait pas la définition de timespec. Or celle-ci est définie dans pthread.t, non ?test.c:7:error storage size of 't' isn't known
Je travaille avec cc v3.4.3 sur Solaris 10.
Si il vous faut d'autres infos, n'hésitez pas à demander.
Je pense que le problème doit venir de la version de mes librairies(trop vieilles).. Ou alors une option dans la compilation que j'aurais oublié..
Pourriez-vous m'aiguiller ?
Merci.
Partager