[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto]

RE: Receita para uso do DJGPP



Thiago Marzano writes:
 >     Para usar o DJGPP, recomendo a seguinte receita:
 > 1) as bibliotecas devem ser copiadas para algum diretório bem simples,
 > como, por exemplo, fazer um novo subdiretório no do DJGPP chamado
 > libmac, por exemplo (eu estou usando as bibliotecas do diretório
 > standard da página da disciplina). Não esquecer de copiar o arquivo
 > makefile também.
 > 2) rodar, no diretório das bibliotecas, o comando no prompt do DOS:
 > > make all
 > isso irá criar arquivos .o e .a, que serão usados pelo DJGPP.
 > 3) daí então, quando vcs escreverem algum arquivo .c usem o seguinte
 > comando para compilá-lo:
 > > gcc -I(diretório das bibliotecas em formato .h e .c) -L(diretório das
 > bibliotecas em formato .o e .a) seu_programa.c
 > isso fará que o arquivo.c que vc escreveu fique executável
 > Ex: quero compilar o arquivo hello.c
 > >gcc -I /djgpp/maclibs/ -L/djgpp/maclibs/ hello.c
 > isso criará o arquivo exeutável hello.exe

Muito obrigado ao Thiago pela receita.  O espirito da lista é exatamente este,
a saber, de circular informacao relevante à disciplina de forma mais ampla
possivel, voces se ajudando uns aos outros.  

Eu acrescentaria uma coisa.  Suponha que os seus programas de exemplo do
capitulo 2 estao no diretorio 

  cap2  

Voce deve tambem ter copiado um arquivo chamado Makefile para este diretorio
(havia tal arquivo no diretorio de onde voce pegou os programas).  Neste
arquivo, existe uma seção que define certos parametros do ambiente, que tem a
seguinte cara: 

# ***************************************************************
# Parameters to control Makefile operation

CSINCDIR = $$HOME/cslib/standard
CSLIBDIR = $$HOME/cslib/standard
CC = gcc
CFLAGS = -g -I. -I$(CSINCDIR)

LIBRARIES = $(CSLIBDIR)/cslib.a -lm

# ***************************************************************

As variaveis 

  CSINCDIR
  CSLIBDIR

definem em que diretorios estao os arquivos .h e o arquivo .a.  Entao, se voce
os puser todos em

  /djgpp/maclib

Voce deve editar as linhas acima para 

CSINCDIR = /djgpp/maclib
CSLIBDIR = /djgpp/maclib

no arquivo Makefile.  Pronto!  Agora, voce pode fazer

  make all

ou 

  make hello

para compilar todos os programas do diretorio ou para compilar o programa
hello.c.  Voce vai ver que os comandos acima chamam o gcc com os devidos
parametros.

Boa sorte a todos e continuemos a socializar as informacoes!!!

Yoshi

 > Gostaria que, se vcs encontrarem algum erro, me corrijam.
 > Thiago
 > 
 > PS: se vcs vão instalar o DJGPP que pegaram da página
 > http://www.ime.usp.br/~jose/djgpp/ logo após de copiar tudo no mesmo
 > diretório, devem mudar o nome do arquivo mak377d.zip para mak3761d.zip e
 > aí sim rodar o arquivo instala.bat, que senão vcs não conseguiram
 > instalar o pacote completo.

Eu consultei o mantenedor daquela pagina, e ele me disse que este problema
pode ter acontecido apenas temporariamente; pode ser que ele nao tenha
acontecido para voce.