Clipper On Line • Ver Tópico - Baixar o Harbour
Mudar para estilo Clássico
Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.
Postar uma resposta

Baixar o Harbour

10 Mai 2017 21:37

Só pra atualizar a informação:

O Viktor chegou a confirmar que o win-make é apenas uma cópia do mingw32-make.exe que foi renomeada.
Trata-se de um make relativamente comum, e não um aplicativo gerador do Harbour.
Qualquer make com mesmos recursos poderia ser usado.

E uma descoberta recente:

Assinando o Harbour e o HBMK2 fica mais rápido, porque os programas de banco não atrapalham.
Sem assinar, os programas de banco usam muito tempo de processamento, deixando o Harbour mais lento.

Os programas de banco são uma espécie de antivírus, que ficam testando tudo que acontece na máquina, os EXEs, etc.
A cada execução do HBMK2 ou Harbour, é feito o teste do EXE, por isso fica mais lento.

E quando está assinado, basta conferir a assinatura, por isso fica mais rápido.

Baixar o Harbour

10 Mai 2017 22:29

Quintas,

Só para esclarecer a assinatura do hbmk2 e harbour são feitos após os binários do harbour serem criados

Baixar o Harbour

10 Mai 2017 23:56

só pra título de curiosidade, assinei e não percebi melhora, talvez pq não use os programas de banco nesse micro de desenvolvimento

Baixar o Harbour

15 Mai 2017 01:48

só pra título de curiosidade, assinei e não percebi melhora, talvez pq não use os programas de banco nesse micro de desenvolvimento


exato.
Quando tem programa de banco instalado, o programa de banco usa quase toda CPU durante a compilação/linquedição.
É algo como um antivírus, checando toda operação efetuada.
Ao estar assinado, por ter identificação, dispensa a checagem.

Gostaria muito de uma explicação melhor sobre o tal padrão.


Retomando o assunto, agora piorou.
Realmente as LIBs precisavam seguir o padrão, estão piores do que eu pensava.
São fontes não formatados, exemplos que nem sequer compilam, uso de função que não existe na LIB, não compilar com os mesmos compiladores do Harbour, conflito de nomes com LIBs do próprio Harbour, etc.
Se tudo isso melhorasse, talvez pudessem até fazer parte do Harbour.

E aproveitando....
Atualizei o mingw pra 7.1, continua tudo normal.

E pensando em abandonar o MSVC 2010.
Continuo achando o mingw muito mais lento pra linqueditar, mas ao instalar o ODBC MySQL 5.3.8, achei chato ter que ficar instalando runtime do MSVC.
Vai acontecer o mesmo com o aplicativo Harbour usando MSVC.

O curioso é ver o modo texto mais elegante do que usando GTWVG.
Vou testar se isso funciona na gtwvg depois.... rs

telados.png

Baixar o Harbour

15 Mai 2017 21:09

Amiguinhos,

Muito do que podemos sentir nos ultimos tempos é que a Micro$oft vem afunilando tudo para o .Net camuflando a programação superficial de várias linguagens conhecidas como Visual Basic, C, C#, J e F.

Ao olhar os SDKs para .Net vemos os compiladores de linha todos lá presentes, csc.exe, jsc.exe, vbc.exe. É como se a Micro$oft estivesse matando as linguagens por dentro. Já que não pode fazer programadores mudarem de linguagem.

Os pacotes remanescentes para compilação em C que acho que continue puros são os VCRedist.

Como o JoseQuintas falou, gerar aplicativos usando o MSVC com certeza fará a instalação de seu aplicativo ter de baixar toneladas de coisas imprevistas.

...Ou tô errado?

Baixar o Harbour

15 Mai 2017 21:49

E não é que uma mudança do C++ foi justamente nesta última atualização do Windows 10 !!!!

Visual Studio 2017 - Universal C Runtime (CRT) for Windows 7
For your question, you want to install Visual Studio 2017 on Win 7 OS,we provide some solution as below:
The preconditions is required KB3151802 to install
When the KB3151802 installs successfully, then restart your computer
Install Visual Studio 2017 and select the "Desktop development with C++",Because,there is a installation issue on win7 OS, so,we provide installation steps to avoid this issue as below:
select the "Desktop development with C++" workload ,then select other Windows SDK(for example: Win10 SDK 10586 or Win 10 SDK 10240) instead of Win 10 SDK 14393, screenshot as below:


Resumindo:
Na hora de usar o C++ do Visual Studio 2017, que ainda não foi lançado, selecionar qualquer versão de Windows 10, menos a 14.393.
Deste jeito ainda vai funcionar no Windows 7, desde que instale o update mencionado.

Essa 14.393 é a lançada no mês passado, que mencionei que nem todo mundo atualizou.
Agora pouca gente vai reclamar da remoção de componentes, porque só vão descobrir quando instalar do zero....

Tem sentido se for o que o nome diz:
Um único run-time, seja qual for o ambiente do W10.
É o Windows tentando ser igual ao Linux, no que diz respeito a funcionar em qualquer lugar.
E isso não é compatível com versões anteriores....

Baixar o Harbour

17 Set 2017 20:54

Post nota 10

Baixar o Harbour

18 Set 2017 09:20

Como o JoseQuintas falou, gerar aplicativos usando o MSVC com certeza fará a instalação de seu aplicativo ter de baixar toneladas de coisas imprevistas.

...Ou tô errado?


O post do Rochinha ficou sem resposta, aproveitar pra responder:

C++ só depende do run-time de C++, é relativamente pequeno, até faz parte do Windows.
O problema é que cada Windows tem uma versão de run-time.

Se usar msvc 2010, roda direto no XP sem instalação, mas pode precisar instalar run-time pra Windows 8 e acima.
Se usar msvc 2015, vai precisar instalar run-time no XP, mas não no Windows 8, e não nas primeiras versões de W10.
Se usar msvc 2017, vai precisar instalar pra quase todos, menos os últimos W10.
E tem run-time pra 32 e 64 bits.

O ODBC MySQL sofre desse efeito, dependendo do ODBC, precisa instalar um run-time diferente.

O problema não é o tamanho, mas precisar da instalação.
Pode ser que precise diretos de administrador, pode ser que a Microsoft retire do mercado, pode ser que um atual não funcione em Windows anteriores.

A parte chata de tudo isso, dos compiladores C é a seguinte:
O que obriga a atualizar compiladores C e código fonte, não é o Harbour, é o WINDOWS.
A cada versão de Windows, há alterações em rotinas do Windows.
Os compiladores C vém com todos os #defines pra Windows, então só atualizando os compiladores pra trazerem as novidades do Windows.
E diversas vezes exigem alterações extras no código fonte.
O Borland C 5.5 é do tempo do Windows 98, talvez XP.

O Windows Vista, veio depois do Windows XP, com novidades nas APIs do Windows.
Existem rotinas do Windows que só funcionam do Windows Vista pra frente, mas não funcionam no XP.
Uma simples: pushbutton com imagem + texto. Isso não existia no XP, isso é do tempo do Vista pra frente.
Outra simples: LoadImage() do Windows, com redimensionamento automático de imagem
Só estas duas, já pode fazer diferença de velocidade em ambiente GUI.
Mas não é só isso: pode ser que pra ter um recurso novo, os parâmetros do Windows foram modificados, e a linguagem antiga não foi atualizada.

Infelizmente, em Windows, ficar atualizando faz parte do desenvolvimento.
Talvez pare agora com Windows 10, mas é bem provável que não.

Ah é, ia esquecendo...
Fora isso, eles vão descobrindo formas do próprio compilador fazer checagem de erros de programador.
Os novos compiladores fazem mais checagens pra evitar erros de programador.
A maioria dos problemas de fontes de LIB não compilarem com o mingw 7.1 é por erros de programador.
Já no BCC... passa qualquer erro.... rs..... até função repetida ele aceita.

Baixar o Harbour

18 Set 2017 11:29

:-Y

Baixar o Harbour

28 Set 2018 13:50

Amiguinhos,

JoseQuintas
você usa o Visual Studio C++? O Visual C++ Express não teria as ferramentas para compilação ou simplesmente o MSVC Compiler 2008 que são free.

Baixar o Harbour

28 Set 2018 19:44

Eu usava o MSVC2010.
Com Windows 10, ele não vém com run-time instalado.
E conforme a versão do Windows 10 se altera, é uma nova versão que vém pré-instalada.
Ou seja... você SEMPRE vai ter que instalar run-time em alguma máquina....

Mas uso mingw, tem sido muito rápido, conforme já coloquei em outro post.
Nenhuma saudade do MSVC, e muito menos do BCC, que nem lembro se algum dia usei.... rs

Recapitulando, compilar DO ZERO, mingw 8.1:

SefazClass: 9 segundos
JoseQuintas: 24 segundos
JPA (aplicativo completo): 48 segundos
JPA (com incremental): 15 segundos

Compilar o JPA inclui compressão com UPX e assinatura digital, por isso 15 segundos, e 48 segundos.

O lado chato é que a bost. do ODBC MySQL usa Microsoft Visual C, e cada versão usa um run-time diferente.
Então... me livrei do MSVC para o aplicativo, mas acabo sendo obrigado a instalar para o ODBC MySQL (desde o 5.x)

hazael escreveu:José, como faz para assinar um EXE?


Uso o utlitário signtool da Microsoft.
Poderia assinar pelo Harbour mesmo, mas só uso o Harbour pra conferir a assinatura, antes de enviar pra download.

Baixar o Harbour

04 Ago 2019 13:51

Só atualizando o post:
Faz diferença qual versão mingw é baixada, pra efeito de compatibilidade.

Costumo procurar um nome conhecido, que havia sido indicado no respositório do Harbour 3.4

x86_64-7.1.0-release-posix-sjlj-rt_v5-rev0

A partir desse nome, dá pra encontrar as outras.

mingw1.png


Como dá pra ver na imagem, nem todas são posix-sjlj
Não me pergunte porque tem mais de uma versão, não faço idéia da diferença de cada uma.

Se baixar a versão x86_64, significa que pode gerar tanto versões 32 bits quanto 64 bits, mas, é lógico, obrigatoriamente a máquina precisa ser 64 bits.
O tamanho dos downloads é cerca de 50MB, seja qual for a versão.
Instalado, pode ocupar 1GB, seria o tamanho pra fazer download do Harbour, se viesse com mingw junto, por isso melhor baixar separado.
O instalador on-line também serve, ele vai acabar mostrando essas mesmas opções.
Mas baixou uma vez, fica na máquina, não precisa ficar baixando mais vezes.
Cabe em qualquer CD ou pen-drive.
Já tive problemas transferindo o compilador C já instalado, de uma máquina pra outra, então recomendo sempre instalar.
Talvez a máquina era 32 bits e eu não tenha reparado, mas de qualquer jeito, o programa de instalação é menor do que ele instalado e compactado.

mingw.png
mingw.png (10.76 KiB) Visualizado 8805 vezes


O mesmo vale pra XHarbour... mas não encontrei qual é a versão exata que ele usa, só sei que não foi compatível com essa.
Postar uma resposta