Página 1 de 1

Harbour & MSVC

Enviado: 15 Ago 2012 04:53
por JoséQuintas
Alguém usando Harbour com MSVC?
E poderia passar as dicas de como fazer?

Ao que parece, precisa gerar tudo em msvc, incluindo LIBs compatíveis.
Queria fazer uns testes pra comparar com Borland C.

Harbour & MSVC

Enviado: 20 Ago 2012 16:15
por sygecom
Oi José,
Primeiro baixe o Harbour do SVN, sabe fazer isso já ? se não, de uma olhada no link abaixo.
https://docs.google.com/document/d/1GC1 ... zLUf0/edit

Tens que baixar o compilador C da Microsoft, eu particularmente selecionei a linguagem espanhol e baixei o instalador usando o link abaixo:
http://www.microsoft.com/visualstudio/e ... pp-express

Esse instalador vem um monte de coisa para instalar inclusive o MSSQL Server, eu deixe tudo marcado menos o MSSQL e mudei o local da instalação que ficaria originalmente em: ARQUIVOS DE PROGRAMAS para instalar tudo em D:\DEVEL\MSVC
Demora até baixar e instalar tudo...

Meus caminhos ficaram então assim:
D:\DEVEL\MSVC
D:\DEVEL\HARBOUR_SVN

Eu criei um .BAT com o seguinte conteúdo e deixei ele em D:\DEVEL:
@echo off
cd msvc\VC
call vcvarsall.bat"
cd\devel\harbour_svn
set HB_COMPILER_VER=1500
set HB_INSTALL_PREFIX=D:\devel\hb-msvc
set HB_INSTALL_IMPLIB=yes
set HB_BUILD_CONTRIB_DYN=yes
set HB_WITH_PGSQL=d:\pgsql\include
set HB_WITH_BLAT=D:\devel\blat262\full\source
set HB_WITH_ADS=D:\devel\ads\include
set HB_WITH_GD=D:\devel\gd-2.0.34\include
set HB_WITH_FREEIMAGE=d:\devel\FreeImage\Dist
set HB_WITH_FIREBIRD=D:\Firebird_2_1\include
set HB_WITH_SQLITE3=d:\devel\sqlite-3_6_22
SET HB_WITH_QT=D:\DEVEL\QT\4.7.4\INCLUDE
set HB_QTPATH=D:\devel\Qt\4.6.3\bin
set HB_QT_BUILD_STATIC=yes
%SystemRoot%\system32\cmd.exe

Depois que der dois clique nesse .BAT é só digitar:
win-make clean
win-make install

Isso deve compilar o harbour usando MSVC depois é só usar o HBMK2 igual como já usa porém setando para esse Harbour que no meu exemplo acima vai criar em: D:\devel\hb-msvc

Qualquer coisa posta aqui !!!

Harbour & MSVC

Enviado: 22 Ago 2012 07:14
por JoséQuintas
Testei com Harbour oficial, pra gerar meus EXEs, mas não pra gerar o Harbour.
O EXE me pareceu mais rápido.
Estou colocando em prática pra ver os resultados: Visual Studio C++ 2010 Express

Removi o Harbour e reinstalei, só pra conferir e postar aqui.
Após instalar o Harbour oficial, fui instalando o que era reclamado ref falta de path e arquivos .h (include)
Acredito ser importante os includes do C++ em primeiro lugar na ordem de pesquisa
Fui fazendo assim, mas agora vou alterar definitivo na máquina, em variáveis de ambiente

SET path=%path%;c:\program files\microsoft sdks\windows\v7.0a\bin
SET path=%path%;c:\Program Files\Microsoft Visual Studio 10.0\VC\bin
SET path=%PATH%;c:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE
SET INCLUDE=c:\Program Files\Microsoft Visual Studio 10.0\VC\include;%INCLUDE%
SET LIB=c:\Program Files\Microsoft SDKs\Windows\v7.0A\Lib;%LIB%
SET LIB=c:\Program Files\Microsoft Visual Studio 10.0\VC\lib;%LIB%

Só pra dar uma idéia de que há diferença entre os compiladores, uma das diferenças é o tamanho:

mingw 5.645.595 apos upx 2.203.419
bcc 4.478.464 apos upx 1.417.728
msvc 4.297.216 apos upx 1.323.520

Obs.
O compilado com msvc foi o único que aceitou usar o mesmo compactador de exe que eu usava no VB, mas com upx fica menor.

Harbour & MSVC

Enviado: 22 Ago 2012 11:47
por JoséQuintas
Comecei a instalar em clientes.
Me disseram que o sistema ficou mais rápido.
Já adotei como padrão: troquei o Borland C 5.5 pelo Visual C++ 2010 Express
Não sei quando entrar na parte gráfica, se as LIBs poderão ser recompiladas.
Por enquanto o resultado foi EXE menor e mais rápido.

No caso do Harboour, estou usando exatamente como baixei, só o pacote normal da versão 3.0.
Instalei o MSVC e configurei pra compilar meus fontes.
Se alguém gostou da idéia, é por sua conta e risco.

O MSVC pode ser instalado via web, ou o download do ISO de 600MB com todo o Visual Studio.

Harbour & MSVC

Enviado: 22 Ago 2012 11:53
por JoséQuintas
Sobre compilar a versão do CVS...
Da outra vez que compilei com o BCC me gerou uma versão com funcionamento diferente em alguns detalhes.
Até insisti lá no grupo de desenvolvedores sobre o problema, e no final era só na minha compilação.
Não pretendo mexer com CVS tão cedo, a não ser que apareça algo que interesse muuuuuito.
Até interessa telas em unicode, pra usar acentuação, mas deixar isso pra depois.

Harbour & MSVC

Enviado: 22 Ago 2012 21:53
por asimoes
Senhores,

A HWGUI é compatível com MSVC?

Harbour & MSVC

Enviado: 22 Ago 2012 22:19
por sygecom
asimoes escreveu:Senhores,

A HWGUI é compatível com MSVC?
Sim, só usar o hbmk2

hbmk2 @hbactivex.hbp
hbmk2 @hbxml.hbp
hbmk2 @hwg_qhtm.hbp
hbmk2 @hwgui.hbp
hbmk2 @procmisc.hbp

Harbour & MSVC

Enviado: 22 Ago 2012 22:25
por asimoes
Resposndendo a minha pergunta: O MSVC é compativel com a HWGUI. baixei o visual c++ 2010, compilei o harbour e depois a hwgui, funcionou sem problemas.

Harbour & MSVC

Enviado: 23 Ago 2012 12:20
por asimoes
Consegui uma versão do MSVC 2010 que não precisa instalar.

http://www.4shared.com/archive/qGbB2WTZ ... 1_x86.html

Harbour & MSVC

Enviado: 13 Set 2012 11:27
por viniciuspc
Pessoal,

O único "problema" ao MSVC é sobre o Win95-98, o aplicativo não roda nestas plataformas...

mas o quanho de performaçe é maior em relação ao BCC, e eu acho que ainda tem a opção em 64 bits...

[]´s

Harbour & MSVC

Enviado: 28 Mar 2019 14:26
por jefb_dias
Olá tudo bem pessoal

encontrei em minhas pesquisas de utilização do Visual Studio, este conteúdo.

existe um material mais atualizado para que eu possa implementar, pois não encontro o compilador C microsoft entre outras coisas.

aguardo um retorno

Jefferson

Harbour & MSVC

Enviado: 28 Mar 2019 18:28
por JoséQuintas
jefb_dias escreveu:existe um material mais atualizado para que eu possa implementar, pois não encontro o compilador C microsoft entre outras coisas.
Sinceramente... não compensa, a menos que realmente precise dele.

Até a versão 2010, dava pra baixar o MSVC em separado do restante do Visual Studio, 1GB de download mais 1GB de atualização.
Depois da versão 2010, somente baixando o Visual Studio completo, com tudo que é linguagem Microsoft.
Além disso, instalar o run-time do MSVC, em TODAS as máquinas dos clientes, conforme a versão do Windows.

Já para o compilador mingw... o download é de 50MB, e não precisa instalar nada nas máquinas dos clientes.

SET HB_COMPILER=msvc
SET HB_COMPILER=mingw
SET HB_COMPILER=bcc

A variável acima determina o compilador para geração do Harbour e para uso.
Se essa variável existir no Windows, é o compilador que vai ser usado como padrão.
Basicamente é configurar o compilador C, seja qual for, e o Harbour faz o resto.

SET HB_INSTALL_PREFIX=c:\harbour34
SET HB_COMPILER=mingw
win-make clean install

O win-make.exe, não vém com Harbour 3.4, na verdade esse é o MAKE do compilador C (mingw) que era copiado para o Harbour. Basta baixá-lo.

Para as LIBs opcionais - só compila quem quiser/precisar - vai ter que olhar as necessidades de cada uma, não uso nenhuma delas.

Harbour & MSVC

Enviado: 28 Mar 2019 19:04
por JoséQuintas
Se quiser ter várias versões de compilador C na máquina:

Faço assim, não sei se tem outra forma mais fácil:

Configure cada compilador C

SET HB_INSTALL_PREFIX=c:\harbour
SET HB_COMPILER=msvc
win-make clean install
SET HB_COMPILER=msvc64
win-make install
SET HB_COMPILER=bcc
win-make install
SET HB_COMPILER=bcc64
win-make install
SET HB_COMPILER=mingw
win-make install
SET HB_COMIPLER=mingw64
win-make install

Ao final de tudo isso, poderá usar MSVC, MINGW ou BCC, nas versões 32 ou 64 bits, no momento que quiser.

Qualquer versão de Harbour trabalha com qualquer versão de C.
Você pode usar um Harbour MINGW pra gerar programa em MSVC, mas o EXE só vai ser gerado se o Harbour contiver as LIBs de MSVC - vai dar falta delas na linquedição, caso o Harbour não as tenha.

Em outras palavras:

lib/win/mingw
lib/win/msvc
lib/win/mingw64

Essas são algumas das pastas de LIBs do Harbour, uma para cada compilador C diferente.
Pode usar qualquer Harbour com qualquer compilador C, mas precisa da pasta LIB correspondente ao compilador que vai usar.
Só que essas pastas só são criadas na geração do Harbour, por isso vai precisar gerar um Harbour pra MSVC, pra ter a pasta lib/msvc. No restante, tanto faz, pode usar qualquer Harbour, mesmo que não tenha sido gerado pra MSVC.

Isso pode ser bom se quiser comparar cada compilador C.

Só lembrando:

O executável do MSVC fica menor... digamos que reduza em 500KB.
E fica menor porque depende do run-time que precisa ser instalado em TODAS as máquinas, o que acaba sendo mais de 500KB.... qual a vantagem em reduzir 500KB ???? (que nem foram reduzidos)

Mas se vai adicionar ícones ao EXE... 5 MB de ícones... qual a vantagem em reduzir 500KB ????

Lembrando também que existem mais LIBs pra usar com MINGW do que com MSVC, o que trás mais desvantagens.

Já usei MSVC por até mais de um ano, na época até valia a pena, agora não mais.

Analise o porquê de querer usar o MSVC primeiro, senão vai ser trabalho à toa, existem mais DESVANTAGENS do que vantagens.