Hwgui em 64bits

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Recapitulando:
1) Baixar o GCC via msys2(linux).
2) Atualizar o GCC ou CLANG via pacman. Su, Sys.
Aqui acaba o uso do msys2. O resto é via CMD!

Setar o PATH do GCC 64Bit usando CMD ou painel de controle!
>PATH=C:\msys32\mingw64\bin;%PATH%
3) Baixar os fontes do Harbour via comando do prompt git CMD do win10
>git clone -depth=20 https://github.com/harbour/core.git hb32-core
>cd \hb32-core
>set HB_INSTALL_PREFIX=c:\hb32", e criar os arquivos .EXE e as LIBS .a do Harbour.
>c:\>mingw32-make install
Colocar no PATH o Harbour compilado!
>PATH=C:\hb32\bin;%PATH%

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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
mas dentro da pasta mingw32/64 nao tem nada , esta vazio
Eu errei. Não sei porque.
A pasta é a c:\msys32, tem as duas aqui, fui olhar aqui no meu e está vazia também. Mas na pasta c:\msys32 tem os arquivos.

Código: Selecionar todos

18/03/2020  04:19             5.630 xzfgrep
18/03/2020  04:19             5.630 xzgrep
18/03/2020  04:19             1.799 xzless
18/03/2020  04:19             2.162 xzmore
22/05/2019  09:06            93.720 zlib1.dll
             194 arquivo(s)    169.683.993 bytes
               2 pasta(s)   195.934.613.504 bytes disponíveis

C:\msys32\mingw64\bin>
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Fernando queiroz
Usuário Nível 4
Usuário Nível 4
Mensagens: 779
Registrado em: 13 Nov 2014 00:41
Localização: Porto Alegre/RS

Hwgui em 64bits

Mensagem por Fernando queiroz »

No meu caso o MSYS2 nao esta baixando nada as pastas ficam vazias , aparentemente ele faz certinho mas

C:\msys64\mingw64\bin ( esta vazia)
C:\msys64\mingw32\bin ( esta vazia )

ja fiz diversas vezes o mesmo processo e nao baixa os arquivos
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Então, eu errei.
veja ai na pasta c:\msys32

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
marcosgambeta
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 16 Jun 2005 22:53

Hwgui em 64bits

Mensagem por marcosgambeta »

Com respeito ao MSYS2, seguem algumas informações:

O desenvolvedor deve instalar a versão de 32-bit ou 64-bit conforme seu sistema operacional.

Depois de instalar e atualizar o MSYS2, conforme as instruções na página do projeto, o desenvolvedor pode instalar os arquivos conforme sua necessidade/interesse.

Os arquivos costumam seguir este padrão:

para 32-bit
mingw-w64-i686-<arquivo>

para 64-bit
mingw-w64-x86_64-<arquivo>

No caso do GCC, seria isto:

para 32-bit
mingw-w64-i686-gcc

para 64-bit
mingw-w64-x86_64-gcc

Já no caso do CLANG, seria:

para 32-bit
mingw-w64-i686-clang

para 64-bit
mingw-w64-x86_64-clang

O comando para instalar, no shell do MSYS2, é o pacman -S <arquivo>. Veja a sintaxe abaixo:

Código: Selecionar todos

pacman -S mingw-w64-i686-gcc
pacman -S mingw-w64-x86_64-gcc
pacman -S mingw-w64-i686-clang
pacman -S mingw-w64-x86_64-clang
Os arquivos instalados irão para as pastas mingw32 e mingw64, conforme forem i686 ou x86_64. Pode-se ter um ou outro ou ambos.

Para pesquisar por arquivos, use o comando pacman-Ss <texto>:

Código: Selecionar todos

pacman -Ss gcc
Note que o desenvolvedor terá 3 shell's para usar. O principal, para manter o MSYS2 atualizado, e mais dois, sendo um para o MINGW 32-bit e outro para o MINGW 64-bit.

Eu não tenho uma lista pronta dos arquivos que devem ser instalados, mas através da pesquisa é possível localizar o que falta. Apenas se lembre de sempre usar o shell principal para proceder com as instalações e atualizações.

Uma informação final:

Para instalar o Qt 5, caso precise dele:

Código: Selecionar todos

pacman -S mingw-w64-i686-qt5
pacman -S mingw-w64-x86_64-qt5
Atenciosamente,
Marcos Antonio Gambeta
Fernando queiroz
Usuário Nível 4
Usuário Nível 4
Mensagens: 779
Registrado em: 13 Nov 2014 00:41
Localização: Porto Alegre/RS

Hwgui em 64bits

Mensagem por Fernando queiroz »

marcosgambeta escreveu:Com respeito ao MSYS2, seguem algumas informações:

O desenvolvedor deve instalar a versão de 32-bit ou 64-bit conforme seu sistema operacional.

Depois de instalar e atualizar o MSYS2, conforme as instruções na página do projeto, o desenvolvedor pode instalar os arquivos conforme sua necessidade/interesse.

Os arquivos costumam seguir este padrão:

para 32-bit
mingw-w64-i686-<arquivo>

para 64-bit
mingw-w64-x86_64-<arquivo>

No caso do GCC, seria isto:

para 32-bit
mingw-w64-i686-gcc

para 64-bit
mingw-w64-x86_64-gcc

Já no caso do CLANG, seria:

para 32-bit
mingw-w64-i686-clang

para 64-bit
mingw-w64-x86_64-clang

O comando para instalar, no shell do MSYS2, é o pacman -S <arquivo>. Veja a sintaxe abaixo:

Código: Selecionar todos

pacman -S mingw-w64-i686-gcc
pacman -S mingw-w64-x86_64-gcc
pacman -S mingw-w64-i686-clang
pacman -S mingw-w64-x86_64-clang
Os arquivos instalados irão para as pastas mingw32 e mingw64, conforme forem i686 ou x86_64. Pode-se ter um ou outro ou ambos.

Para pesquisar por arquivos, use o comando pacman-Ss <texto>:

Código: Selecionar todos

pacman -Ss gcc
Note que o desenvolvedor terá 3 shell's para usar. O principal, para manter o MSYS2 atualizado, e mais dois, sendo um para o MINGW 32-bit e outro para o MINGW 64-bit.

Eu não tenho uma lista pronta dos arquivos que devem ser instalados, mas através da pesquisa é possível localizar o que falta. Apenas se lembre de sempre usar o shell principal para proceder com as instalações e atualizações.

Uma informação final:

Para instalar o Qt 5, caso precise dele:

Código: Selecionar todos

pacman -S mingw-w64-i686-qt5
pacman -S mingw-w64-x86_64-qt5
Agora a coisa funcionou, era isso que faltava, dei uma olhada no YT ontem e vi que tinha de baixar os arquivo pois o -Syu -Su so baixava/atualizava o shell.

obrigado Marcos Gambeta
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4
Usuário Nível 4
Mensagens: 779
Registrado em: 13 Nov 2014 00:41
Localização: Porto Alegre/RS

Hwgui em 64bits

Mensagem por Fernando queiroz »

Código: Selecionar todos

>gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.1.0/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with: ../gcc-10.1.0/configure --prefix=/mingw64 --with-local-prefix=/mingw64/local --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --with-native-system-header-dir=/mingw64/x86_64-w64-mingw32/include --libexecdir=/mingw64/lib --enable-bootstrap --with-arch=x86-64 --with-tune=generic --enable-languages=c,lto,c++,fortran,ada,objc,obj-c++ --enable-shared --enable-static --enable-libatomic --enable-threads=posix --enable-graphite --enable-fully-dynamic-string --enable-libstdcxx-filesystem-ts=yes --enable-libstdcxx-time=yes --disable-libstdcxx-pch --disable-libstdcxx-debug --disable-isl-version-check --enable-lto --enable-libgomp --disable-multilib --enable-checking=release --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --disable-plugin --with-libiconv --with-system-zlib --with-gmp=/mingw64 --with-mpfr=/mingw64 --with-mpc=/mingw64 --with-isl=/mingw64 --with-pkgversion='Rev2, Built by MSYS2 project' --with-bugurl=https://sourceforge.net/projects/msys2 --with-gnu-as --with-gnu-ld
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 10.1.0 (Rev2, Built by MSYS2 project)
agora ta certinho Itamar M. Lins Jr.
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Agora a coisa funcionou, era isso que faltava, dei uma olhada no YT ontem e vi que tinha de baixar os arquivo pois o -Syu -Su so baixava/atualizava o shell.
Explica pq eu mesmo ainda não sei porque tem duas pastas na raiz.
No meu sistema tem c:\msys32 e dentro tem o GCC para 32BIts e 64Bits.
E tem também a pasta c:\msys64 com as duas pastas vazias.
A confusão que eu fiz foi indicar a pasta c:\msys64
Os comandos são esses mesmos que tem na pagina do msys2
pacman -Syu //aqui vai baixar os pacotes novos atualizados tanto faz serem de 32 ou 64.
pacman -Su //aqui vai atualizar os pacotes novos, independente de serem 32 ou 64 conforme o manual.
Antes de aplicar o pacman -Su tem em inglês a advertência.
If needed, close MSYS2, run it again from Start menu. Update the rest with:
Sem título.png
A imagem ai é bem clara.
Só lembro de ter usado esses dois comandos.
Não sei explicar porque tem uma pasta c:\msys64 com tudo vazio aqui também.

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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Agora nesse momento.
>pacman -Syu
Sem título.png
Já vai atualizar o gcc 9.3 para a versão 10 e vai atualizar 32bit e 64bit, não estou pegando separado 32 e 64.

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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Continuando.
Sem título.png
Pede para fechar o terminal e abrir novamente a ultima msg.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Fernando queiroz
Usuário Nível 4
Usuário Nível 4
Mensagens: 779
Registrado em: 13 Nov 2014 00:41
Localização: Porto Alegre/RS

Hwgui em 64bits

Mensagem por Fernando queiroz »

Itamar é exatamente isso
se voce usar somente o -Syu -Su so vai baixar o shell do MINGW32/MINGW64 para baixa o pacote tem de fazer como o Marcos Gambeta postou


olha ai o resultado, parece que esta funcionando

compilado com HARBOUR 3.2 64bits

Código: Selecionar todos

:\HB64\tests>hbmk2 test.prg
hbmk2: Processing environment options: -comp=mingw64
hbmk2: Processing local make script: hbmk.hbm
Harbour 3.2.0dev (r2004201301)
Copyright (c) 1999-2020, https://harbour.github.io/
Compiling 'test.prg'...
Lines 22, Functions/Procedures 2
Generating C source output to 'C:\Users\m5200\AppData\Local\Temp\hbmk_ffhisr.dir\test.c'... Done.

C:\HB64\tests>test

        32
         0
        32
        32
       109
        97
        98
        32
        32
         0
        32
    mab   
"   mab    "
"    mab   "
"   mab   "
compilado com o HARBOUR 3.2 32bits

Código: Selecionar todos

C:\HB64\tests>hbmk2 test.prg
hbmk2: Processing environment options: -comp=mingw
hbmk2: Processing local make script: hbmk.hbm
hbmk2: Processing configuration: C:\hb32\bin\hbmk.hbc
Harbour 3.2.0dev (r2002240732)
Copyright (c) 1999-2020, https://harbour.github.io/
Compiling 'test.prg'...
Lines 22, Functions/Procedures 2
Generating C source output to 'C:\Users\m5200\AppData\Local\Temp\hbmk_k0fq4v.dir\test.c'... Done.
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Acredito que consegui entender...
Pq faz tempo que instalei o msys2 e instalei para 32bits.
Acontece que tem o msys2 para windows 32 bits que baixa o gcc e slang para 32 e 64.
E tem o msys2 para windows 64 que também faz a mesma coisa.
Como eu já tinha aqui instalado, e baixei novamente o msys2 para 64 e fiz a confusão...
Veja que no meu win10 tem os dois.
Sem título.png
Sem título.png (7.99 KiB) Exibido 6074 vezes
E faltou a parte dos comandos que o Marcos Gambeta ensinou.
Pq faz tempo que usei eles... Depois de instalado basta apenas ficar atualizando via >pacman -Syu, >pacman -S, e eu nem lembrava mais que precisava baixar os pacotes.

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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Corrigindo aqui... Tem os dois instalados, dai a confusão.
Sem título.png
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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Continuando com a saga...
Pq tenho que refazer o procedimento que fiz já tem uns 4 anos ou mais.
Depois de instalado o msys2 para win64 -> msys2-x86_64-20190524.exe
Vamos baixar os pacotes do GCC etc..., conforme a orientação do Viktor Szakats

Código: Selecionar todos

pacman -S git base-devel msys2-devel mingw-w64-{i686,x86_64}-toolchain
Já instala GCC 32 e 64 ! Foi assim que tinha feito há muito tempo... e estou repetido os passos agora.
Sem título.png
Teclei enter em todas as opções.
E no final confirmei com S

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

Hwgui em 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Agora vou recompilar os fontes do Harbour com o GCC 10!
Já informei previamente as libs que uso nos sistemas.

Código: Selecionar todos

C:\devl\hb32-code>set hb
HB_INSTALL_PREFIX=c:\hb32
HB_STATIC_CURL=yes
HB_STATIC_OPENSSL=yes
HB_WITH_CURL=C:\curl-7.70.0-win64-mingw\include
HB_WITH_FREEIMAGE=C:\FreeImage\Dist\x64
HB_WITH_MYSQL=C:\mysql-8.0.19-winx64\include
HB_WITH_OPENSSL=C:\openssl-1.1.1g-win64-mingw\include
Não digo se é GCC se é 32 ou 64. Pq o padrão é 64. Veja o (auto-detected)
Só informo a pasta c:\hb32 onde vai ficar o harbour compilado. via set HB_INSTALL_PREFIX=c:\hb32

Código: Selecionar todos

C:\devl\hb32-code>mingw32-make install
! Building Harbour 3.2.0dev from source - https://harbour.github.io
! MAKE: mingw32-make 4.3 sh.exe install
! HB_INSTALL_PREFIX: c:\hb32
! HB_HOST_PLAT: win (x86_64)  HB_SHELL: nt
! HB_PLATFORM: win (x86_64) (auto-detected)
! HB_COMPILER: mingw64 (auto-detected: C:/msys64/mingw64/bin/)
O segredo é apontar o PATH do GCC e de onde irá ficar o harbour compilado para uso posterior.

Código: Selecionar todos

set PATH=C:\HB32\BIN;C:\msys64\mingw64\bin;%PATH%
Achando o GCC o hbmk2 faz o resto.

Se não estou enganado o Hb34, já detecta os dois GCC32/64 e gera o Harbour para os dois!

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Responder