Pular para o conteúdo

Duvidas sobre trheads [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Duvidas sobre trheads [RESOLVIDO]

Enviado em 17/11/2009 - 18:23h

Sou novo aqui... Totalmente iniciante em Linux
Estou tentando resolver um exercicio passado em aula.

#include <stdio.h>
#include <pthread.h>

void *imprime_mensagem(void *ptr);

int main()
{
pthread_t t1, t2;

char *msg1 = "primeiro";
char *msg2 = "segundo";

pthread_create(&t1, NULL, imprime_mensagem, (void*)msg1);
pthread_create(&t2, NULL, imprime_mensagem, (void*)msg2);

return 0;
}

void *imprime_mensagem(void *ptr)
{
char *mensagem = (char *)ptr;
printf("%s ", mensagem);
return NULL;
}


Quando mando compila ele da o seguinte erro: (prog.c)

prog.c:(.text+0x3d): undefined reference to 'pthread_create'
prog.c:(.text+0x5f): undefined reference to 'pthread_create'
collect2: ld returned 1 exit status


É pedido para que identifique os problemas do programa
e pede para acrescentar pthread_join para evitar os problemas encontrados
Alguem pode me ajudar. Vlw



Responder tópico

2. Re: Duvidas sobre trheads [RESOLVIDO]

Enviado em 18/11/2009 - 11:01h

Para compilar um programa com threads é necessário incluir a biblioteca 'lpthread' na compilação no gcc
Veja
compilar
$gcc arquivo.c -lpthread -o arqexe
executar
$./arqexe

3. ENC. Thrads

Enviado em 18/11/2009 - 14:55h

Caro Saitam,
Agradeço pela força.

Fiz oq vc comento
Ele compila certinho e fica assim

USO: /aqrexe <comando>

O que isso quer dizer???

4. Re: Duvidas sobre trheads [RESOLVIDO]

Enviado em 18/11/2009 - 15:03h

para compilar aplicação C com Threads
$gcc arquivo.c -lpthread -o arqexe

arquivo.c é o nome do arquivo C
-l inclui a biblioteca qualquer na compilação
pthread nome da biblioteca
-o arquivo objeto
nome_exe é o nome do executável

para compilar
$./nome_exe (não esquecer do ponto(.)/ seguido do nome do executável)

Material sobre Threads - https://computing.llnl.gov/tutorials/pthreads/


5. Re: Duvidas sobre trheads [RESOLVIDO]

Enviado em 18/11/2009 - 15:16h

OK.

Agora consegue vlw pelo tutorial.

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder