Exospace c/ outras bibliotecas no .bat

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
miracle
Usuário Nível 3
Usuário Nível 3
Mensagens: 117
Registrado em: 14 Jun 2007 16:28
Localização: Sao Paulo SP

Exospace c/ outras bibliotecas no .bat

Mensagem por miracle »

Bom dia, Amigos!

Para compilar meus programas, uso arquivos de lote. Não sei usar scripts de compilação. Assim sendo, tenho um arquivo de lote para compilar programas com o Exospace:

Código: Selecionar todos

CLS
CLIPPER %1
IF NOT ERRORLEVEL 1 EXOSPACE FILE %1
DEL %1.obj
Como eu devo fazer para que, na hora de linkeditar, o Exospace use as bibliotecas como a FGL30.lib ou a Six3.lib que estão no diretório "c:\clip52e\lib"? O autoexe.nt está certinho.
Clipper 5.2e + DBFCDX + Exospace 1.0g
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Simplesmente adicione LIB c:\clip52e\lib\NOME_DA_LIB* (isso se o Exospace não conflitar), porque ele é meio chatinho...

Obs.: * Mensagem re-editada
Editado pela última vez por Pablo César em 24 Jul 2007 09:17, em um total de 1 vez.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
miracle
Usuário Nível 3
Usuário Nível 3
Mensagens: 117
Registrado em: 14 Jun 2007 16:28
Localização: Sao Paulo SP

Mensagem por miracle »

Seria dessa forma?

Código: Selecionar todos

CLS 
CLIPPER %1 
IF NOT ERRORLEVEL 1 EXOSPACE FILE %1 LIB C:\CLIP52E\LIB
DEL %1.obj
Clipper 5.2e + DBFCDX + Exospace 1.0g
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Desculpe falta mencionar o nome da LIB que você precisa para funcionar. Pensando bem acho que você nessa mesma BAT poderia fazer o SET LIB=c:\clip52e\lib e depois de compilada retornar ao que estava. É assim que eu faço quando alterno de CLIP52 para CLIP53. Mas não é frequente, mas acabo redefinindo variáveis de ambiente no minha própria BAT de compilação.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Conselho de amigo: jogue fora essa porcaria de ExoSpace e use o BLinker.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Maligno escreveu:Conselho de amigo: jogue fora essa porcaria de ExoSpace e use o BLinker.
É isso aí... isso é uma boa !.

Mas caro miracle, por quê cargas daguas você precisa utilizar tanta memória assim ?.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
miracle
Usuário Nível 3
Usuário Nível 3
Mensagens: 117
Registrado em: 14 Jun 2007 16:28
Localização: Sao Paulo SP

Mensagem por miracle »

Quase consegui resolver meu problema fazendo o seguinte:

Código: Selecionar todos

CLS 
CLIPPER %1 
IF NOT ERRORLEVEL 1 EXOSPACE FILE %1 LIBRARY SIX3 
DEL %1.obj 
Agora, quando tento linkeditar mais de uma lib seguida, como abaixo:

Código: Selecionar todos

CLS 
CLIPPER %1 
IF NOT ERRORLEVEL 1 EXOSPACE FILE %1 LIBRARY SIX3, FGLIB31 
DEL %1.obj 
o EXOSPACE parece não encotrar a segunda, porque dá um monte de mensagens de alerta e cria um executável que apresenta erros na execução.

Baixei o Blinker 7 do seu site, Maligno. Após executar um instalador via Windows, verifiquei que ele extrai um monte de arquivos. Quais são necessários para o Blinker rodar e quais eu posso tacar fora? E como eu compilo via arquivo de lote com ele?
Clipper 5.2e + DBFCDX + Exospace 1.0g
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

miracle escreveu:

Código: Selecionar todos

IF NOT ERRORLEVEL 1 EXOSPACE FILE %1 LIBRARY SIX3, FGLIB31 
Está me parecendo que existe um espaço extra entre "SIX3," e "FGLIB31". Remova-o, pois num programa de linha de comando isso significa um outro argumento. Deve ser isso.
Baixei o Blinker 7 do seu site, Maligno. Após executar um instalador via Windows, verifiquei que ele extrai um monte de arquivos. Quais são necessários para o Blinker rodar e quais eu posso tacar fora?
São vários diretórios específicos para outras linguagens. Vou ter que olhar direito. Mas eu deixo tudo lá. Não ocupam muito espaço. :)
E como eu compilo via arquivo de lote com ele?
Pelo que vi da sua linha de comando, é a mesmíssima coisa. Mas outros argumentos podem ser usados. Para o modo protegido há algumas coisas a mais. Exemplo:

BLINKER FI %1 LI BLXCLP52,SIX3,FGLIB31 BLI EXE EXT

No BLinker, FI=FILES, LI=LIBRARY, BLI=BLINKER, EXE=EXECUTABLE e EXT=EXTENDED (modo protegido). Você pode usar os nomes inteiros, caso queira. Mas lembre-se de que há um limite de tamanho para a linha de comando. Por isso sempre se aconselha o uso de script. O BLinker tem muitas opções. Seria idea, portanto, o uso de scripts. Mas pra uma linkedição básica, dá pra usar a linha de comando tranqüilamente.

A biblioteca BLXCLP52 é essencial para criar um programa em modo protegido. Ela serve para o Clipper versão 5.2x. Se estiver usando a versão 5.3, troque-a por BLXCLP53.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
miracle
Usuário Nível 3
Usuário Nível 3
Mensagens: 117
Registrado em: 14 Jun 2007 16:28
Localização: Sao Paulo SP

Mensagem por miracle »

"Mas caro miracle, por quê cargas daguas você precisa utilizar tanta memória assim ?"

Não entendi, Pablo Cézar. Gostaria de utilizar o Exospace no lugar o RTLink ou de qualquer outro porque acho que ele daria mais estabilidade ao meu programa e o faria rodar bem em máquinas com windows XP usando a memória extendida nos programas feitos em Ms-Dos. Ele usa muita memória?

Ha, e o que eu falei de o Exospace não estar lendo a segunda lib, é o seguinte: ele parece estar em conflito com a lib FGLIB31. Parece que está procurando um monte de arquivos com extensão ".c" que eu nunca ouvi falar.
Clipper 5.2e + DBFCDX + Exospace 1.0g
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Pois é, é por isso tudo que nós não aconselhamos o uso do Exoespace, se quiser mais estabilidade e recursos de memória na execução dos teus aplicativos utilize o BLINKER que o Maligno te indicou. Mas ainda acho que o RTLINK para muitas situações é bom o suficiente.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Pablo César escreveu:Mas ainda acho que o RTLINK para muitas situações é bom o suficiente.
Você está certíssimo. Entretanto, se a aplicação crescer demais, o modo protegido fará muita diferença. Quando utilizava o RTLink tinha "out of memory" freqüentemente. Depois de migrar pro BLinker em modo protegido, nunca mais.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Responder