Uma breve revisão de como escrever e compilar os programas em Programação Avançada no Ambiente UNIX® , graças a < em> slm por me ajudar a entender os passos. Você pode fazer o download do código-fonte aqui . Eu gostaria que esta informação fosse incluída como parte do apêndice b do livro, onde o arquivo de cabeçalho é explicado.
O arquivo não compactado contém diretórios com os nomes
dos capítulos e outros dois chamados include
e lib
.
Aqueles com os nomes dos capítulos têm todo o
programas desse capítulo neles.
O diretório include
contém o arquivo de cabeçalho que
é usado na maioria dos programas do livro: apue.h
.
O diretório lib
tem o código-fonte do
implementações para o cabeçalho.
Vamos supor que o arquivo descompactado esteja localizado em:
SCADDRESS/
, por exemplo, pode ser:
/home/yourid/Downloads/apue.3e/
Depois de descompactar o código-fonte, vá para o diretório
e execute make
:
$ cd SCADDRESS
$ make
make
irá compilar todos os programas em todos os capítulos.
Mas o importante é que antes disso, vai fazer
a biblioteca que conterá as implementações do
funções em apue.h
.
Para compilar um programa de exemplo que você escreve do livro, execute este comando do GCC (assumindo que o nome do seu programa é myls.c
, que é o primeiro no livro):
gcc -o myls myls.c -I SCADDRESS/include/ -L SCADDRESS/lib/ -lapue
-I
informa ao gcc
qual diretório procurar pelo arquivo de inclusão.
-L
informa a localização do diretório da biblioteca e
-lapue
, informa o nome do arquivo da biblioteca para procurar
nesse diretório. Tal que -LXXX significa procurar por um arquivo
no diretório da biblioteca com o nome: libXXX.a ou libXXX.so.