Vários arquivos no pacote de instalação do programa tar.gz. O que devo compilar?

0

Eu baixei um arquivo tar.gz, extraí-lo e existem 3 arquivos: Makefile , program.c e protocol.h
Eu os abri no gedit e Makefile contém apenas uma linha program : program.c protocol.h Em program.c eu acho que existe um programa principal (muitas linhas)
E protocol.h está definindo apenas as variáveis principais (somente #define lines e short , char etc. Devo compilar apenas program.c ou protocol.h também? Ou compilá-los todos?

    
por Bartosz Olszewski 19.03.2015 / 08:59

1 resposta

0

Você não compila um arquivo de cabeçalho (embora seja possível fazer isso), você compila um arquivo de origem que pode incluir alguns arquivos de cabeçalho, mas se os arquivos de cabeçalho necessários foram incluídos no arquivo de cabeçalho. arquivo fonte não é (ou não deveria ser) algo para você, é algo para o desenvolvedor: se program.c foi escrito corretamente, ele listará seus arquivos de cabeçalho necessários em suas instruções #include , que serão então substituído pelo pré-processador no tempo de pré-processamento com as linhas contidas no arquivo de cabeçalho correspondente antes da compilação ocorrer: portanto, para compilar, use apenas make :

make

ou gcc :

gcc program.c

Mas se você realmente quiser ter certeza de que protocol.h foi incluído em program.c , execute:

grep protocol.h program.c

E se o comando retornar #include "protocol.h" , protocol.h foi incluído em program.c .

    
por kos 19.03.2015 / 11:24