Compilar manualmente com DCC32

15/02/2006

0

Olá pessoal,
estou tentando compilar um código usando o dcc32.exe mas acontece
alguns erros que ainda não consigo resolver

o objetivo é fazer um programa que compile automaticamente alguns
programas

alguem pode colocar um exemplo

ficaria muito agradecido


Miudo

Miudo

Responder

Posts

15/02/2006

Aloizio Castro

Kara, eu fiz um teste, da seguinte maneira:
[b]c:\arquivos de programas\borland\delphi\bin>[/b] dcc32 biblioteca.pas


e tudo ocorreu normalmente, gerando um arquivo biblioteca.dcu

qual eh o seu problema??


Responder

15/02/2006

Miudo

é que eu estou tentando compilar um dpr de uma dll
sua unidade usa outras units que já estão compiladas

eu coloco dcc32 -U<diretorios das unidades> nomedpr

ele diz que o dcu das outras unidades estão com uma versão diferente
da unidade principal

uTal.pas was compiled with a different version of uPrincipal.pas

eu não consigo resolver isso. se eu compilar unidade por unidade,
e depois compilar a dpr, funciona.
não sei qual o critério que ele toma para dar esse erro. fico com receio de ter que sempre recompilar um por um as unidades usadas.


Responder

15/02/2006

Massuda

Inclua um -B na sua linha de comando... isso faz com que o DCC32 compile todas as units envolvidas.


Responder

15/02/2006

Miudo

resolvi algumas coisas

é o seguinte...
na dpr, quando tem a declaração das unidades, o formato é assim:

uTal in ´Tal.pas´

porém quando a unidade está uma pasta anterior a declaração fica
uTal in ´..\Tal.pas´

o compilador parece não identificar essa unidade, sendo necessário colocar todo o caminho

dessa forma a dll é compilada, mas fica com o tamanho maior que a
compilada pelo IDE do delphi (de 15K para 213K)
deve ser alguma configuração que não descobri


Responder

15/02/2006

Massuda

uTal in ´..\Tal.pas´
Você pode eliminar o path dessas units no DPR; o DCC32 deve procurar nas pastas que você especificou no -U.

dessa forma a dll é compilada, mas fica com o tamanho maior que a compilada pelo IDE do delphi
Dê uma olhada nas opções de debug e otimização.


Responder

22/02/2006

Miudo

Existe uma opção -LU que indica o uso de packages em tempo de
execução ex.:

-LUvclx30;VCL30;vcldb30;vcldbx30;inetdb30;inet30;VclSmp30;Qrpt30;
teeui30;teedb30;tee30;dss30;IBEVNT30;

caso não seja necessário compilar os packages junto com o programa tem que ser adicionado esse parâmetro.
Por isso minha dll estava maior que o normal.

No ide do delphi eu marcava a opção ´Build with runtime packages´


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar