De Harbour 3.4 pra Harbour 3.2

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

De Harbour 3.4 pra Harbour 3.2

Mensagem por Itamar M. Lins Jr. »

Olá!
Se alguém poder me ajudar, agradeço!
Olhei seu BAT e está apontando para o PATH de 64 e mandando compilar em 32.(Pq não compila em 32bits)
Tem que existir os dois 32 e 64, parece que vc só tem 64.
set PATH=%PATH%;C:\mingw64\bin;%MEU_HB%\bin
O PATH do 64 aponta para o mesmo lugar.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

De Harbour 3.4 pra Harbour 3.2

Mensagem por Itamar M. Lins Jr. »

Olá!
Harbour 3.2 compila normal 32 ou 64.
OpenSSL que tem uma configuraçãozinha ordinária pq não precisa de um arquivo...
Tô no Linux, agora.
Alias, vou instalar aqui do zero usando VistualBox...Meu SSD é de apenas 400Gib mas deve dá...
Use msys2 e seja feliz!
https://www.msys2.org/

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
mauricioportela
Usuário Nível 2
Usuário Nível 2
Mensagens: 95
Registrado em: 29 Jul 2016 04:22
Localização: Vitoria da Conquista/Bahia

De Harbour 3.4 pra Harbour 3.2

Mensagem por mauricioportela »

Olá Itamar!
Olhei seu BAT e está apontando para o PATH de 64 e mandando compilar em 32.(Pq não compila em 32bits)
Tem que existir os dois 32 e 64, parece que vc só tem 64.
set PATH=%PATH%;C:\mingw64\bin;%MEU_HB%\bin

O PATH do 64 aponta para o mesmo lugar.
Peguei a dica do Quintas acima e baixei o compilador:
preferi parar no mingw 7.3, EXE menor e harbour parou até antes dele.
https://sourceforge.net/projects/mingw-w64/files/
x86_x64-posix-sjlj - já vém com 32 e 64 bits
Funciona com 64bits sem problema mas, quando tento compilar pra 32bits, o processo inicia criando 3 diretorio em \hb32-32: doc, include e lib. Dentro de lib (C:\hb32-32\lib\win\mingw), se cria uma lib (libunicows.a) e para. Justamente em "png" - como citou o Quintas.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

De Harbour 3.4 pra Harbour 3.2

Mensagem por Itamar M. Lins Jr. »

Olá!
Sei não! Não entendi como é.
Tá usando defasado GCC está na 14... Ai é mais complicado, msys2 faz tudo sozinho.
Tem que existir 2 gcc, 2 libs para cada opção.
Seu PATH manda para a pasta \bin e não está correto. (Pasta BIN do mesmo GCC 64)
msys2 instala 4 opções de compiladores em pastas separadas, openSSL etc... tudo que o Harbour precisa, vc terá que achar o OpenSSL para usar que esse GCC ai.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

De Harbour 3.4 pra Harbour 3.2

Mensagem por Itamar M. Lins Jr. »

Olá!
Só tô te respondendo pq, vc perguntou.
Eu uso há muito tempo msys2, instalamos para usar o LetoDBf, esses dias. O roteiro está ai no forum.
Mas não tem bixo de sete cabeças.
É instalar atualizar escolher e usar.
Vou ver se consigo aqui agora. Posto as telas aqui se for o caso.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
mauricioportela
Usuário Nível 2
Usuário Nível 2
Mensagens: 95
Registrado em: 29 Jul 2016 04:22
Localização: Vitoria da Conquista/Bahia

De Harbour 3.4 pra Harbour 3.2

Mensagem por mauricioportela »

Ola Itamar!

Sobre o MSys2, pode ser instalado dessa forma?

https://www.youtube.com/watch?v=9u0IYSzcG6I&t=1216s

Att.
Mauricio Portela
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

De Harbour 3.4 pra Harbour 3.2

Mensagem por Itamar M. Lins Jr. »

Olá!
Acabou de sair do forno!
Receitinha de bolo!
https://pctoledo.org/forum/viewto ... 43&t=27709

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

De Harbour 3.4 pra Harbour 3.2

Mensagem por JoséQuintas »

O harbour 3.4 funciona perfeito com a versão combinada de mingw, qualquer versão de mingw, até mesmo 4.x

Já no harbour 3.2, não aceita versão combinada, e OBRIGA versões mais novas de mingw.
Acaba obrigando a instalar 2 mingw diferentes pra 32 e 64 bits.

Aqui no momento estou usando harbour 3.2 e mingw i686-posix-dwarf 6.4.0 (VERSÃO SEIS)
Só chutei versão próxima de uma lib que não pode ser recompilada.

mingw mais novo tem mais checagens no fonte C.
Alguém altera fonte C do harbour ? Não
O que fazem é desativar essas checagens a mais pra não dar erro/warning.

Já se foi o tempo em que eu me importava com essas coisas, agora tanto faz.
Dá erro em GTWVG, HWGUI, MINIGUI, HARBOUR, tanto faz.
O que tiver que dar erro, vai dar erro em qualquer versão de mingw.
É usar a que passar na compilação e pronto.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

De Harbour 3.4 pra Harbour 3.2

Mensagem por JoséQuintas »

Faltou dizer sobre UCRT:

https://winlibs.com/
Traditionally the MinGW-w64 compiler used MSVCRT as runtime library, which is available on all versions of Windows.
Since Windows 10 Universal C Runtime (UCRT) is available as an alternative to MSVCRT.
Universal C Runtime can also be installed on earlier versions of Windows (see: Update for Universal C Runtime in Windows).
Unless you are targetting older versions of Windows, UCRT as runtime library is the better choice, as it was written to better support recent Windows versions as well as provide better standards conformance (see also: Upgrade your code to the Universal CRT).
https://learn.microsoft.com/en-us/cpp/p ... w=msvc-160
Because the UCRT is now a Microsoft Windows operating system component, it's included as part of the operating system in Windows 10 and later. It's available through Windows Update for older operating systems, Windows Vista through Windows 8.1. A Redistributable version is available for Windows XP.
Sei lá... sistemas operacionais sem suporte terão suporte !?!?!?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

De Harbour 3.4 pra Harbour 3.2

Mensagem por Itamar M. Lins Jr. »

Olá!
Alguém altera fonte C do harbour ? Não
Claro que altera, corrige, cria...

Código: Selecionar todos

2024-05-31 11:49 UTC+0200 Aleksander Czajczynski (hb fki.pl)
  * contrib/rddmisc/arrayrdd.prg
    ! group of fixes contributed in #355 by @VarenL:
      IndexOrd() didn't work, DbZap() didn't update indexes, problem
      with larger number of indexes, erroneous AR_GOBOTTOM function.
...
  * contrib/hbpgsql/rddcopy.c
    ! fix c&p bug/typo in HB_PQCOPYFROMWA, corrected handling field list
      passed in <aFiledNames> parameter

      <lResult> := HB_PQCOPYFROMWA( <pConn>, <cTargetTable>, [<bWhileBlock>],
                                   [<bForBlock>], [<aFieldNames>], [<nCount>],
                                   [<lTrimStrings>], [<nPreBuffer>] )
...
2024-02-09 20:56 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
  * contrib/hbcurl/core.c
  * contrib/hbcurl/hbcurl.ch
    + added HB_CURLOPT_XFERINFODATA and HB_CURLOPT_XFERINFOFUNCTION
    ! use CURLOPT_XFERINFO* instead of depreciated CURLOPT_PROGRESS*
      to implement HB_CURLOPT_PROGRESSBLOCK
    ! do not use depreciated CURLOPT_RANDOM_FILE and CURLOPT_EGDSOCKET,
      they serve no purpose anymore
    + added macros for new protocols
    + added HB_CURLOPT_PROTOCOLS_STR and HB_CURLOPT_REDIR_PROTOCOLS_STR
    ! use CURLOPT_PROTOCOLS_STR and CURLOPT_REDIR_PROTOCOLS_STR instead
      of depreciated CURLOPT_PROTOCOLS and CURLOPT_REDIR_PROTOCOLS
    * emulate CURLOPT_PROTOCOLS and CURLOPT_REDIR_PROTOCOLS using
      CURLOPT_PROTOCOLS_STR and CURLOPT_REDIR_PROTOCOLS_STR in new curl
      versions
    + added support for HB_CURLOPT_MIMEPOST
    ! use CURLOPT_MIMEPOST to emulate depreciated in new curl versions
      CURLOPT_HTTPPOST
    + added support for HB_CURLOPT_PROXY_SERVICE_NAME
    ! use CURLOPT_PROXY_SERVICE_NAME to emulate depreciated in new curl
      versions CURLOPT_SOCKS5_GSSAPI_SERVICE
    + added HB_CURLINFO_ACTIVESOCKET
    ! use CURLINFO_ACTIVESOCKET instead of depreciated CURLINFO_LASTSOCKET
    + added HB_CURLINFO_SIZE_UPLOAD_T, HB_CURLINFO_SIZE_DOWNLOAD_T,
      HB_CURLINFO_SPEED_DOWNLOAD_T, HB_CURLINFO_SPEED_UPLOAD_T,
      HB_CURLINFO_CONTENT_LENGTH_DOWNLOAD_T and
      HB_CURLINFO_CONTENT_LENGTH_UPLOAD_T
    ! use CURLINFO_*_T actions instead of depreciated ones which operate
      double as file offset and emulate old actions using new ones in
      new curl versions
Isso ai em cima não é WORK AROUND, nem estão escondendo WARNINGS do compilador.
Corrigem muita coisa.

Não entendi até agora como é essa versão COMBINADA.
Pq, eu venho procurando entender isso, desde muito tempo e se não tem os dois binários e as duas libs não tem como compilar nem linkar nada.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

De Harbour 3.4 pra Harbour 3.2

Mensagem por JoséQuintas »

Itamar M. Lins Jr. escreveu:Não entendi até agora como é essa versão COMBINADA.
Pq, eu venho procurando entender isso, desde muito tempo e se não tem os dois binários e a duas libs não tem como compilar nem linkar nada.
São os dois juntos, em 60MB de download.
É isso que significa o x86_64, os dois juntos.

Sempre usei no harbour 3.4 sem problemas, mas no 3.2 não funciona, o 3.2 se perde com essa instalação.
São apenas os dois juntos e nada mais.
Continua precisando gerar harbour 32 e 64 bits do mesmo jeito.
Apenas não precisa instalar 2 mingw.
hb34.png
Em 2018, com harbour 3.4, usava a versão combinada.
Com harbour 3.2 ficou limitado às versões isoladas.
E pra compabilidade com fivewin, mudei pra dwarf.

Depois não mexi mais.
Tudo tem bug, tanto faz a versão, desanimei de ficar trocando pra porr. nenhuma.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
mauricioportela
Usuário Nível 2
Usuário Nível 2
Mensagens: 95
Registrado em: 29 Jul 2016 04:22
Localização: Vitoria da Conquista/Bahia

De Harbour 3.4 pra Harbour 3.2

Mensagem por mauricioportela »

Uma contribuição:

Criar atalho para o MSYS2 no WT (Windows Terminal)
https://www.pctoledo.com.br/forum/viewt ... 43&t=27713

Att.

Mauricio Portela
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

De Harbour 3.4 pra Harbour 3.2

Mensagem por Itamar M. Lins Jr. »

Olá!
É isso que significa o x86_64, os dois juntos.
Tá equivocado. x86 é arquitetura INTEL.
Screenshot_20240712_182922.png
Não quer dizer que tem dois.
Sempre teve i686 que é 32Bits e x86_64 que é o AMD64
Eu entendo dessa forma.
São os dois juntos, em 60MB de download.
60Mb deve tá faltando muitos arquivos, por exemplo OpenSSL.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

De Harbour 3.4 pra Harbour 3.2

Mensagem por Itamar M. Lins Jr. »

Olá!
Olhando no arquivo deles para gerar, eles usam o msys2 para gerar 32 e 64.
Não entendi como é que eles fazem o gcc 32 e 64... Já que usam msys2 32 e 64. Vai entender...
Peguei desse nixman pra ver.

host gcc 32-bit:
Using built-in specs.
COLLECT_GCC=C:\msys64\home\nixman\mingw-builds\toolchains\mingw32\bin\gcc.exe
COLLECT_LTO_WRAPPER=C:/msys64/home/nixman/mingw-builds/toolchains/mingw32/bin/../libexec/gcc/i686-w64-mingw32/6.3.0/lto-wrapper.exe
...
host gcc 64-bit:
Using built-in specs.
COLLECT_GCC=C:\msys64\home\nixman\mingw-builds\toolchains\mingw64\bin\gcc.exe
COLLECT_LTO_WRAPPER=C:/msys64/home/nixman/mingw-builds/toolchains/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/6.3.0/lto-wrapper.exe

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

De Harbour 3.4 pra Harbour 3.2

Mensagem por JoséQuintas »

Itamar M. Lins Jr. escreveu:Tá equivocado. x86 é arquitetura INTEL.
Não quer dizer que tem dois.
Sempre teve i686 que é 32Bits e x86_64 que é o AMD64
Eu entendo dessa forma.
Não estou equivocado.
Foi o primeiro problema ao mudar pra harbour 3.2, não aceitar a versão de mingw combinada

http://pctoledo.com.br/forum/viewtopic. ... ilit=gerar
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder