como compilar um programa c que usa pthread.h?

8

Sou iniciante e sou novo no Ubuntu. Acabei de instalá-lo e quero executar um programa em C. Não tenho ideia de qual plataforma usar ou onde gravar o código. Eu preciso usar o arquivo de cabeçalho pthread.h no programa. Alguém pode me ajudar?

    
por user248075 14.02.2014 / 07:47

5 respostas

13

Uso:

gcc MyProgram.c -o MyProgram -lpthread 

e não se esqueça de incluir a biblioteca POSIX no seu código. Ele irá compilar seu código.

    
por Parthiv Shah 05.04.2014 / 11:16
1

Se você for compilar um programa em C com pthread.h no LINUX usando GCC ou G ++, você terá que usar a opção –lpthread após o comando compile. / p>

gcc xyz.c -o xyz -lpthread

Aqui,

gcc é o comando do compilador (nome do compilador)
xyz.c é um nome de arquivo de origem.
-o é uma opção para criar o arquivo objcect.
xyz é o nome do arquivo objeto (binário).
-lpthread é uma opção para pthread.h

para mais detalhes aqui está o link contendo o artigo completo sobre ele.
Compilando o programa C com o pthread .h no Linux.

    
por Mike 12.03.2016 / 19:54
0

A primeira coisa que você precisará no Ubuntu para compilar os programas C / C ++ é instalar o GCC (Gnu Compiler Collection), que faz parte do pacote build-essential , faça isso executando:

sudo apt-get install build-essential

Depois, você pode testar se você o instalou executando gcc . Se você vir um erro como Fatal error: file not provided (não tem certeza da mensagem de erro exata, mas deve ser algo similar), isso significa que você tem compilador pronto.

E para editar seu código, você pode usar o Gedit já disponível, basta procurá-lo no Dash.

Agora a seguir é a sintaxe para compilar o seu arquivo de origem C, execute o seguinte onde o seu arquivo é:

gcc MyProgram.c -o MyProgram

Onde, a opção -o é opcional, mas fornecida para mencionar o nome do arquivo binário que deve ser criado a partir de sua origem.

Em seguida, basta executar ./MyProgram para executar o seu binário.

Note que pthread.h como você mencionou (POSIX Thread) deve estar disponível por padrão com o GCC, então simplesmente incluí-lo no seu arquivo C fará esse trabalho, caso não esteja disponível, uma simples pesquisa no Google deve ajudar. ;)

Atualizar

Demasiado tempo, não leu? verifique this . : D

    
por Kushal 14.02.2014 / 08:18
0

Se der erro, você pode tentar o mesmo comando trocando os parâmetros como

gcc -lpthread -o output_file program_pthread.c

depois disso ./output_file fornece saída para o programa e aqui program_pthread.c é o programa pthread que você implementou.

    
por Brijesh Patel 17.06.2015 / 14:10
0

Para o programa C ++:

g++ -std=c++11 Myprogram.cpp -o MyProgramTest -lpthread
    
por RamKumar Lodhi 17.09.2017 / 22:00

Tags