Página 1 de 1
Baixar e compilar Harbour do CVS
Enviado: 07 Nov 2012 11:02
por JoséQuintas
Agora tá mais fácil fazer isso.
Achei legal a ferramenta CVS, por linha de comando.
A desvantagem é que sempre baixa tudo do zero.
A vantagem é que só baixa o CVS, sem criar pastas e arquivos escondidos
A diferença no resultado é a pasta do CVS ocupar uns 60mb ao invés de 300mb.
Normal... é apenas pra download, enquanto a outra é pra quem usa upload/download e controle de versão
E pra quem não quiser o RUN do 3.2 diferente do 3.0, só trocar o run.c, da pasta src/rtl.
Obs. Da outra vez a nightly compilada com mingw não funcionava diferente.
Ou então alterar esta linha, que é a única coisa diferente: (no run.c)
No Harbour 3.0
#if defined( HB_OS_WIN_CE )
No Harbour 3.2
#if defined( HB_OS_WIN )
o tutorial que foi feito está aqui:
http://www.elektrosoft.it/tutorials/how ... indows.asp
Ainda não sei se vai funcionar bem. Quem quiser, faça por sua conta e risco.
No msvc deu alguns avisos na compilação que deixam na dúvida, mas tá funcionando.
Avisos do tipo:
harboury.c(4089) : warning C4244: '=' : conversion from 'int' to 'yytype_int16', possible loss of data
harbour.y(1371) : warning C4309: 'argument' : truncation of constant value
harbour.y(1374) : warning C4309: 'argument' : truncation of constant value
d:\harbour\src\compiler\obj\win\msvc\harboury.c(7737) : warning C4702: unreachable code
d:\harbour\src\compiler\obj\win\msvc\harboury.c(7776) : warning C4701: potentially uninitialized local variable 'hb_comp_yylval' used
Baixar e compilar Harbour do CVS
Enviado: 07 Nov 2012 13:56
por Jairo Maia
Olá José,
Obrigado por compartilhar a dica.
Baixei e compilei. Parece que está tudo certo. Vou aproveitar seu tópico e colocar mais açúcar nesse doce:
1 - Quem ainda não tem o
SVN Tool instalado, baixe aqui:
SVN Tool
2 - Salve o código abaixo com a extensão .bat e rode no prompt de comando (
importante: após instalar o SVN Tool)
3 - Altere o Path do Windows, removendo a instrução:
C:\hb32\bin por:
c:\hb32\comp\mingw\bin;C:\harbour\bin
Código: Selecionar todos
svn export https://harbour-project.svn.sourceforge.net/svnroot/harbour-project/trunk/harbour c:\harbour
if errorlevel 1 goto fim
pause
PATH=C:\hb32\comp\mingw\bin
SET HB_INSTALL_PREFIX=c:\harbour
cd c:\harbour
win-make.exe clean install
:fim
Baixar e compilar Harbour do CVS
Enviado: 07 Nov 2012 14:09
por JoséQuintas
Só que tem mais detalhes....
O resultado vai para uma pasta nova, portanto os fontes devem estar em uma pasta diferente de hb_install_prefix
aqui criei este bat, apesar de não usar hwgui:
Código: Selecionar todos
rem
rem Harbour 1.0
rem svn export https://harbour-project.svn.sourceforge.net/svnroot/harbour-project/branches/harbour-1.0 d:\cvsfiles\harbour10
rem
rem Harbour 2.0
rem svn export https://harbour-project.svn.sourceforge.net/svnroot/harbour-project/branches/harbour-2.0 d:\cvsfiles\harbour20
rem
rem Harbour 3.0
rem svn export https://harbour-project.svn.sourceforge.net/svnroot/harbour-project/branches/harbour-3.0 d:\cvsfiles\harbour30
rem
rem HWGui
rem svn export svn://svn.code.sf.net/p/hwgui/code/trunk/hwgui d:\cvsfiles\hwgui
rem
rem Harbour CVS
svn export https://harbour-project.svn.sourceforge.net/svnroot/harbour-project/trunk/harbour d:\cvsfiles\harbour32
Baixar e compilar Harbour do CVS
Enviado: 07 Nov 2012 18:16
por JoséQuintas
Outra diferença no Harbour 3.2:
Retornos que eram bytearray no harbour 3.0, retornam string no harbour 3.2.
tipo...
oHttp:ResponseBody
Não sei se isso é recente, ou sempre foi assim no Harbour 3.2.
Mas a primeira coisa que veio na minha cabeça foi sobre minigui, hwgui, e bibliotecas que não fazem parte do harbour.
Mudanças assim devem causar um belo estrago.
Baixar e compilar Harbour do CVS
Enviado: 07 Nov 2012 20:17
por Jairo Maia
Olá José,
Sobre o :ResponseBody não sei dizer, porque há muito tempo passei a usar HB_LibLoad("UrlMon.dll"). Porém, sobre o Hb_Run( cComando ), este não funciona com as sugestões que você passou, e nem mesmo substituindo o arquivo run.c.
Penso que a versão que contempla suporte para console, parou na versão 3.0.0. Creio que a partir dela, a preocupação maior já é em modo GUI, uma vez que este processo me parece natural.
Pela manhã, vou usar as informações de seu post anterior e tentar baixar a versão 3.0.0. Depois dos testes, posto aqui.
Baixar e compilar Harbour do CVS
Enviado: 07 Nov 2012 21:22
por JoséQuintas
Tenho basicamente um EXE com TUDO, tudo mesmo.
O EXE roda nos clientes e no meu servidor.
No meu servidor fica processando notas fiscais eletrônicas, acessando Secretaria da Fazenda, e enviando email.
E também, ao liberar pra clientes, eu faço upload pro site, e eles o download.
Como já disse por aqui, meus testes são colocando pra valer.
Meu primeiro teste ao trocar o Harbour é enviar email, e já falhou logo de cara.
Só funcionou com o run.c do Harbour 3.0.
Depois no servidor já deu erro na consulta de nota fiscal da Fazenda, por causa do retorno diferente.
E não consegui mais fazer upload/download do site, também por causa do retorno diferente.
Como fiquei fazendo testes, andei retornando os fontes do Harbour originais, e recompilando (do 3.2).
Pra não esquecer do run.c, coloquei na pasta do aplicativo.
O detalhe da compilação do CVS é o que falei: a pasta de destino (hb_install_prefix) tem que ser diferente da pasta dos fontes.
Se não fizer isso, pode estar usando o harbour anterior pensando que está no harbour recém compilado.
Na primeira compilação aqui, usando o drive D:, e pasta d:\harbour, o harbour compilado ficou em C:\harbour, e quase não percebi.
Resumindo:
Estou usando na prática, o sistema só funcionou igual antes ao fazer as alterações: run.c no harbour, e string ao invés de byte array.
Só que cometi uma falha ao postar: usei um nome de variável que confunde.
Foi na comunicação SOAP, então é mais apropriado oSoap:Responsebody.
oHttp confunde com o objeto do explorer.
Baixar e compilar Harbour do CVS
Enviado: 12 Nov 2012 10:18
por Jairo Maia
Olá José,
Deu certo! Baixei a versão 3.0.0 rev 17074 tudo do zero. Fiz como você sugeriu, a pasta de download diferente da pasta hb_install_prefix.
Ficou assim aqui: arquivos do CVS na pasta hbcvs30 e o harbour na pasta harbour.
Pode ser impressão (mas acho que não é), mas o sistema compilado com essa versão me pareceu bem mais rápido.
Valeu as dicas. Obrigado.
Baixar e compilar Harbour do CVS
Enviado: 12 Nov 2012 11:12
por JoséQuintas
Complemento:
Para o Harbour 3.2 rodar arquivos BAT, passei a usar o seguinte:
RUN (GetEnv("COMSPEC") + " /c " + cArquivoBat )
Desta forma, não precisa mais do run.c do Harbour 3.0.
Baixar e compilar Harbour do CVS
Enviado: 20 Nov 2012 21:08
por JoséQuintas
Atualizando a última informação:
Usando em console funciona sempre.
Se usar gtwvt, somente trocando pelo run.c do Harbour 3.0.
Baixar e compilar Harbour do CVS
Enviado: 05 Fev 2013 12:14
por JoséQuintas
Para o caso de alguém chegar a este tópico:
* harbour/src/rtl/run.c
* harbour/src/rtl/hbrunfun.c
! use MSCRTL system call in desktop MS-Windows builds of __RUN()
and HB_RUN() functions.
It restores Clipper compatible __RUN() behavior and now both
functions work in the same way on all platforms except WinCE/Mobile
which does not have shell system.
O inconveniente com RUN não existe mais no Harbour oficial a partir de fevereiro.