[FUGSPBR] Fw: GCC + thread
Fernando
fern2 em wings.com.br
Qua Abr 30 08:40:16 BRT 2003
bom Dia ...
Instalei o FreeBSD 4.7 standart e estou tentando compilar em C um exemplo
de
Thread.
Mas ocorre o seguinte erro ..
1. tentativa
turbo# gcc -o arq -lpthread pri.c
/usr/libexec/elf/ld: cannot find -lpthread
2. tentativa
turbo# gcc -o arq -pthread pri.c
/tmp/ccCLXG8d.o: In function `thread_function':
/tmp/ccCLXG8d.o(.text+0x45): undefined reference to `a_thread_exit'
O que esta errado ... tenho que instalar mais alguma coisa ???
Estou trabalhando com socket e tudo ok ... o problema eh quando tento
compilar alguma coisa com Thread.
Obrigado
Fernando
<pri.c>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <pthread.h>
char message[] = "Hello World";
void *thread_function(void *arg) {
printf("thread_function is running. Argument was %s\n", (char *)arg);
sleep(3);
strcpy(message, "Bye!");
a_thread_exit("Thank you for the CPU time");
}
int main() {
int res;
pthread_t a_thread;
void *thread_result;
res = pthread_create(&a_thread, NULL,
thread_function, (void *)message);
if (res != 0) {
perror("Thread creation failed");
exit(EXIT_FAILURE);
}
printf("Waiting for thread to finish...\n");
res = pthread_join(a_thread,&thread_result);
if (res != 0) {
perror("Thread join failed");
exit(EXIT_FAILURE);
}
printf("Thread joined, it returned %s\n", (char *)thread_result);
printf("Message is now %s\n", message);
exit(EXIT_SUCCESS);
}
_______________________________________________________________
Sair da Lista: http://www2.fugspbr.org/mailman/listinfo/fugspbr
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/
Mais detalhes sobre a lista de discussão freebsd