ciao sto compilando una tesina per sistemi operativi, da consegnare tra l'altro domani!
sto bloccato perche non riesco a far funzionare i thread in linux con il compilator gcc, mi da un errore del tipo:

/tmp/ccpbhioe.o(.text+0x195):in Function 'main': undefined reference to 'pthread_create'

io credo che sia duvuto al fatto che la versione di linux non supporta i thread , ma ho anche provato
a compilarlo sulla versione live di knoppix ma mi da sempre lo stesso errore

ecco il codice: come include metto

#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
#include <stdio.h>
#include <pthread.h>
#include <time.h>
#include <unistd.h>
#include <fcntl.h>
#define Errore_(x) { puts(x); exit(1); }
#define KEY_SERVER 40
#define mainfile "mainfile"
#define key_sem1 50
#define key_sem2 51
#define num_client 10

ed il codice dove creo i thread è:

...

if (type == 1 || type == 3) {
ris = pthread_create(&tid, NULL, visualizza,(void*) &richiesta);
if (ris != 0)
Errore_("Errore nella crezione del thread\n");
}
else if (type == 2) {
ris = pthread_create(&tid, NULL, scrivi, (void*) &richiesta);
if (ris != 0)
Errore_("Errore nella crezione del thread\n");

...






la funzione lanciata nel thread è:





...

void * visualizza(void* richiesta) {

int ris;
struct sembuf oper;

ric_servizio ric_aux;
memcpy (&ric_aux, &richiesta, sizeof(ric_servizio));
...








per favore aiutatemi!se volete vi mando o vi posto tutto il codice sorgente.

grazie davvero a chiunque mi aiuti

aspetto vostre risposte