Mostrando postagens com marcador gcc. Mostrar todas as postagens
Mostrando postagens com marcador gcc. Mostrar todas as postagens

sexta-feira, 14 de junho de 2013

Programa C - Compilação de Programas via prompt

Para compilar programas 'C' em distribuições Fedora/CentOs (ou outras) usando o compilador/linkeditor gcc (GNU Compiler Collection, http://gcc.gnu.org/) utilizar, preferencialmente, a seguinte sintaxe:

gcc -Wall -o <executavel> <fonte.c>

Exemplo:

gcc -Wall -o teste teste.c

Caso o programa use a biblioteca Math.h, incluir o parâmetro -lm para linkeditar com esta biblioteca:

gcc -Wall -lm -o <executavel> <fonte.c>

Exemplo:

gcc -Wall -lm -o teste teste.c

Outros parâmetros comuns:
-c : Apenas compila o programa, mas não faz a linkedição. Para linkeditar então deve-se chamar novamente o gcc, passando com a seguinte sintaxe:
gcc -o <executavel> <objeto>

exemplo:
1) Compilação
gcc -c -o teste.o teste.c

2) Linkedição
gcc -o teste teste.o

-glevel (normalmente -g3): Inclui informação completa de Debug, para uso com o GDB (GNU Debugger (http://www.gnu.org/software/gdb/)




Programa C - Utilização da Biblioteca Math

Em distribuições Fedora/CentOs, quando se quer utilizar a biblioteca MATH (math.h / libm) em programas "C", por algum motivo o linkeditor normalmente não encontra esta biblioteca por default. Neste caso, é necessário informar ao compilador no momento da compilação para utilizá-la:

gcc -o <executavel> -lm <fonte>

Exemplo:

gcc -o teste -lm teste.c

Quando usando a IDE do Eclipse, deve-se entrar nas propriedades do projeto (ALT-ENTER), ir na opção C/C++ Build, seção Settings, GCC C Linker, Libraries, incluir a Library (-l) m.


segunda-feira, 13 de maio de 2013

C - Suporte a Arquivos com mais de 4Gbytes

Quando se utiliza programas "C", compilados com GCC,  para leitura de arquivos com mais de 4 Gigabytes deve-se utilizar os parâmetros :

-D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64