Página 1 de 1

MSG ERRO DO BLINKER ou EXECUTÁVEL MUITO GRANDE.

Enviado: 18 Ago 2007 11:00
por marcelojr
Moçada é o seguinte:
uso Clipper 5.2e e link-edito com BLINKER (5.10 e 7.0)...

só que depois que implementei no meu sistema mais uma rotina (NOVA), o blinker apresenta a seguinte msg de erro:

BLINKER: 1141: new .EXE needs larger file alignment value.
e não gera o executável.
se eu compilar com o parametro /L não dá o erro, mas aí minha rotina de acompanhamento de erros de execução fica baleada pq ela retorna o no. da linha em execução...

detalhe: os PRGs que compõem o Sistema totalizam +- 190.000 linhas
o executável tem : 1.520.500 bytes (+- 1.5 MB)
já utilizo LIBs próprias geradas com o TLIB 4.00(borland) ...

será q se eu mudar para o CLIPPER 5.3 pode resolver ?

meu arquivo .LNK:
OU MEU_EXE
BLINKER INCREMENTAL OFF
BLINKER EXECUTABLE COMPRESS 1
BLINKER EXECUTABLE EXTENDED
BLINKER CACHE XMS 512,25%
BLINKER CACHE EMS 50%,1024
FILE OBJ1,OBJ2 ,GETSYS
SEARCH BLXCLP52
LIB DBFCDX,AJFONT,IMPBAR,FAST52,MINHAS_LIBS

100+

por enquanto
muito obrigado .

Enviado: 18 Ago 2007 11:13
por Eolo
O help do 7 diz o seguinte (não parece ser problema da versão do Clipper):
1141: new .EXE needs larger alignment value

This message indicates that the Microsoft new .EXE file (DOS extended or 16 bit Windows .EXE or .DLL) would be larger than 65535 times the .EXE alignment value default or as specified in a BLINKER EXECUTABLE ALIGNMENT nnn command. This is a requirement of the New .EXE file format, and the default alignment value is 64 for CA-Clipper programs and 16 for all other programs.
The error is resolved by adding the BLINKER EXECUTABLE ALIGNMENT nnn command to the link script file, and successively increasing the value in powers of 2, i.e. 32, 64 etc., until the output file is created successfully.
Note that Blinker 5.0 may display this message when linking certain large programs which linked successfully with previous versions, but are getting near the limit. This is perfectly normal, and should be corrected as described above.
In some special cases, this error can also be resolved by adding the command PACKDATA to the link script file, which causes multiple data segments to be combined into one wherever possible at link time.
Se não souber inglês, avisa que a gente traduz.

Enviado: 18 Ago 2007 11:34
por marcelojr
VALEU EOLO.....


ADICIONEI A LINHA

BLINKER EXECUTABLE ALIGNMENT 128

ao arquivo.lnk

e resolveu..

valeu mesmo....
aquele abraço !!.