Página 1 de 1

ERRO DE COMPILAÇÃO -> FATAL C3020 TOO MANY SEGMENTS ???

Enviado: 22 Jul 2005 10:36
por Darlan
FATAL C3020 TOO MANY SEGMENTS

Olá !!

Alguém sabe o que causa esse erro na compilação?
Como resolver?

Desde já agradeço !!


Darlan (Mafra-SC)

Enviado: 22 Jul 2005 10:57
por Daniel
vc esta compilando um so prg este vai chamando os outros?

EXATO !!!

Enviado: 22 Jul 2005 15:53
por Darlan
Isso mesmo Daniel !! O PRG principal chama o restante!
Se for pra dividir em lotes menores eu não sei como trabalhar
com dois executáveis... um EXE chamar o outro, entende?

Darlan

Enviado: 22 Jul 2005 17:28
por Daniel
Aki vc vai criar um arqRmk.rmk

Código: Selecionar todos

// Make file exemplo
//

.prg.obj:

(aki tem um espaço) Clipper $< /m

SeuPrgPrincipal.OBJ : SeuPrgPrincipal.prg
TBR1.OBJ     : tbr1.prg
TBR2.OBJ     : tbr2.prg
TBR3.OBJ     : tbr3.prg
TBR4.OBJ     : tbr4.prg
TBR5.OBJ     : tbr5.prg
TBR6.OBJ     : tbr6.prg
TBR7.OBJ     : tbr7.prg
TBR8.OBJ     : tbr8.prg
TBR9.OBJ     : tbr9.prg
TBR9A.OBJ    : tbr9a.prg
TBR10.OBJ    : tbr10.prg
TBR11.OBJ    : tbr11.prg
TBR12.OBJ    : tbr12.prg


Neste vc fai criar um arqlnk.lnk

Código: Selecionar todos


FILE SeuPrgPrincipal tbr1 tbr2
FILE tbr3 tbr4 tbr5 tbr6 tbr7 tbr8j tbr9
FILE tbr9a tbr10 tbr11 tbr12

OUTPUT SeuExe
lib  clipper
lib  extend
lib  dbfntx
lib  terminal


ai vc compila assim

rmake arqRmk
exospace @ArqLnk
ou
Rtlink @ArqLnk

Enviado: 22 Jul 2005 20:26
por Darlan
Daniel! Não estou conseguindo criar o OBJ, pois não
entendi a linha abaixo do Arquivo.RMK: (como deve ficar na prática?)

(aki tem um espaço) Clipper $< /m * ESSA LINHA... "Aki tem um espaço" ???

O Rmake não está criando o OBJ pois não entende essa linha...
O restante eu entendi... e a propósito, eu vou utilizar o RTLINK para compilar.
Abaixo segue o meu BAT que utilizo para compilar (é o único que sei...) para
você dar uma olhada:

copy c:\clipper5\include\*.ch
C:\CLIPPER5\BIN\clipper %1
if not errorlevel 1 rtlink file %1
del *.ch


Darlan

Enviado: 23 Jul 2005 00:44
por Daniel
fica assim

Código: Selecionar todos

// Make file exemplo 
// 

.prg.obj: 

  Clipper $< /m 

SeuPrgPrincipal.OBJ : SeuPrgPrincipal.prg 
TBR1.OBJ     : tbr1.prg 
TBR2.OBJ     : tbr2.prg 
TBR3.OBJ     : tbr3.prg 
TBR4.OBJ     : tbr4.prg 
TBR5.OBJ     : tbr5.prg 
TBR6.OBJ     : tbr6.prg 
TBR7.OBJ     : tbr7.prg 
TBR8.OBJ     : tbr8.prg 
TBR9.OBJ     : tbr9.prg 
TBR9A.OBJ    : tbr9a.prg 
TBR10.OBJ    : tbr10.prg 
TBR11.OBJ    : tbr11.prg 
TBR12.OBJ    : tbr12.prg 
vc nao usa mais o clipper e sim o rmake

rmake arqRmk

Rtlink @ArqLnk

Enviado: 23 Jul 2005 17:22
por Darlan
AÍ DANIEL...

VEJA O ERRO QUE DÁ:

RMAKE ARQRMK
RMAKE 1.4 Copyright (c) 1989-1993 Computer Associates International, Inc.
ARQRMK.RMK(6) Fatal RMAKE/R3012 Syntax error: '/m'


NÃO RECONHECE O PARÂMETRO /m...


Darlan

Enviado: 23 Jul 2005 18:14
por Daniel
falta o espaço no começo desta linha
Clipper $< /m

Enviado: 23 Jul 2005 18:31
por Darlan
Então eu não sei o que é... pois já tentei com 1, 2, 3 até 10 espaços
em brancos e mesmo assim dá o erro...
Será que o meu rmake está com uma versão mais antiga?


Darlan

RESOLVIDO !!!

Enviado: 25 Jul 2005 13:30
por Darlan
Está resolvido Daniel !!!

Parece piada, mas estava dando erro na linha em branco que estava
entre o (.prg.obj:) e o ( clipper $< /m). Eliminei a linha e não deu mais erro...
E realmente, compilar dessa forma parece ser bem mais interessante, pois dá
para chamar as funções dos outros prgs como se estivessem no mesmo...
além de ter quantos prgs quiser...

Valeu Daniel, com essa, fico te devendo duas... :))) Muito obrigado !!!

UM ABRAÇO !!!

Darlan

e abaixo segue como o meu sistema ficou adaptado na nova compilação
para conhecimento dos outros membros do forum que precisarem:


// ARQ.RMK

.prg.obj:
CLIPPER $< /m

DIGI.OBJ : DIGI.prg // PRG principal do sistema
CADASTRO.OBJ : CADASTRO.prg
CADVEN.OBJ : CADVEN.prg
CLIENTES.OBJ : CLIENTES.prg
-----------------------------------------------------------------------------

e no outro arquivo:

// ARQ.LNK

FILE DIGI, CLIENTES
FILE CADASTRO
FILE CADVEN

OUTPUT DIGI
lib clipper
lib extend
lib dbfntx
lib terminal
-----------------------------------------------------------------------------

e um BAT que executa os dois:

// ARQUIVO.BAT

RMAKE ARQ.RMK
RTLINK @ARQ.LNK