Compilar incluindo "contrib" - Básico .HBP

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

Moderador: Moderadores

Avatar do usuário
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

Compilar incluindo "contrib" - Básico .HBP

Mensagem por susviela@bol.com.br »

Na pasta "C:\hb32\contrib" tem vários exemplos de contribuições e entrando nesses exemplo podemos compilar e testar.

Acontece que agora eu criei uma nova pasta para testar meus exemplos particulares e estou "barbereando, heheheh", para compilar. ( viewtopic.php?f=42&t=18474#p117298 ) um colega da lista me indicou orientou assim:
No rodapé da mensagem diz:

hbmk2: Dica: Adicionar opção 'hbsqlit3.hbc' faltando nas funções:
sqlite3_libversion_number(), sqlite3_sleep(), sqlite3_libversion()

Coloque esse arquivo em seu arquivo.hbp.
Como faço para incluir o arquivo 'hbsqlit3.hbc' no meu arquivo .HBP ?
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Compilar incluindo "contrib" - Básico .HBP

Mensagem por JoséQuintas »

Exatamente desse jeito.

hbsqlit3.hbc

Desde que a LIB exista, pois trata-se de um componente opcional, que precisa de arquivos extras, e não vém 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
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Compilar incluindo "contrib" - Básico .HBP

Mensagem por Jairo Maia »

Com o Harbour 3.2 é tranquilo (é o que ele usa). Basta acrescentar no arquivo .Hbp. Por exemplo:
-inc
-quiet

hbsqlit3.hbc

-oNomeDoExecutavel.Exe

Arquivo1.Prg
Arquivo2.Prg
Arquivo3.Prg
etc...
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Compilar incluindo "contrib" - Básico .HBP

Mensagem por Toledo »

susviela@bol.com.br escreveu:para testar meus exemplos
Para testes rápidos, você pode também passar o arquivo hbc na linha de comando... por exemplo:
hbmk2 conecta.prg hbsqlit3.hbc
Editado conforme mensagem abaixo do Jairo

Uma outra saída no uso da linha de comando para testes rápidos, se você observar, nas pasta \TESTS que tem em cada pasta da \CONTRIB (por exemplo: \CONTRIB\HBSQLIT3\TESTS\), tem um arquivo chamado hbmk.hbm, copie este arquivo para a mesma pasta que você está fazendo os testes, ai você pode compilar só digitando: hbmk2 conecta.prg

Mas se tem o arquivo HBP, então é a melhor opção.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Compilar incluindo "contrib" - Básico .HBP

Mensagem por Jairo Maia »

Toledo escreveu:hbmk2 conecta.prg -hbsqlit3.hbc
Apenas uma observação: No caso de passar diretamente pela linha de comando, arquivos .hbc não podem ter o sinal de subtração (-). Nesse caso seria:
hbmk2 conecta.prg hbsqlit3.hbc
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

Compilar incluindo "contrib" - Básico .HBP

Mensagem por susviela@bol.com.br »

Continuo apanhando .... vai ver é a idade ou o frio do SUL.

Assim funcionou:
hbmk2 conecta.prg hbsqlit3.hbc
Mas com o arquivo de projeto: conecta.hbp apresenta erros.

Meu arquivo de projeto:

Código: Selecionar todos

-inc
-compr=yes
-quiet
-lxhb
-lhbwin
-lhbct
-lhwgui 
-lprocmisc 
-lhbxml 
-lhwgdebug 
-gui
hbsqlit3.hbc

-oconecta

conecta.prg


Erro ao compilar: hbmk2 conecta.hbp
C:\power\dos\hwgui\sql>hbmk2 conecta.hbp
hbmk2: Processando opções do ambiente: -comp=mingw
hbmk2: Acionado pelo operador de diretivas " # ": hbsqlit3.hbc
C:/hb32/comp/mingw/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhwgui
C:/hb32/comp/mingw/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lprocmisc
C:/hb32/comp/mingw/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhbxml
C:/hb32/comp/mingw/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhwgdebug
collect2.exe: error: ld returned 1 exit status
hbmk2[conecta]: Erro: Executando linkeditor. 1

C:\power\dos\hwgui\sql>

Só para acompanharem vejam o fonte:

Código: Selecionar todos

#require "hbsqlit3"

PROCEDURE Main()

   ? sqlite3_libversion()
   sqlite3_sleep( 3000 )

   IF sqlite3_libversion_number() < 3005001
      RETURN
   ENDIF

   RETURN
   

Para orientação: A ideia é que já fique disponível para usar HwGui assim que os testes com a conexão SQLITE 3 der ok, mas acho que estou errando na questão CAMINHO ou na inclusão das contribuições ou LIbs.
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Compilar incluindo "contrib" - Básico .HBP

Mensagem por Jairo Maia »

Olá Carlos,

Tente acrescentar o path onde estão essas libs que não foram encontradas em seu arquivo .hbp da seguinte forma:

Código: Selecionar todos

-LC:\caminho_completo_das_libs
Note que tem que ser o ele maiúsculo precedido pelo sinal de subtração: -L
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

Compilar incluindo "contrib" - Básico .HBP

Mensagem por susviela@bol.com.br »

Conforme orientado até compila mas ....

Meu arquivo concecta.hbp (abaixo) que estou chamando assim: C:\power\dos\hwgui\sql>hbmk2 conecta.hbp


-inc
-compr=yes
-quiet
-lxhb
-lhbwin
-lhbct
-LC:\hwgui\lib\hwgui <===== Aqui alterei como orientado e o erro desse item (hwgui) desapareceu
-lprocmisc
-lhbxml
-lhwgdebug
-gui
hbsqlit3.hbc

-oconecta

conecta.prg


C:\power\dos\hwgui\sql>hbmk2 conecta.hbp
hbmk2: Processando opções do ambiente: -comp=mingw
hbmk2: Acionado pelo operador de diretivas " # ": hbsqlit3.hbc
C:/hb32/comp/mingw/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lprocmisc
C:/hb32/comp/mingw/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhbxml
C:/hb32/comp/mingw/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhwgdebug
collect2.exe: error: ld returned 1 exit status
hbmk2[conecta]: Erro: Executando linkeditor. 1


A dúvida eram 4 linhas com aviso de erros, conforme orientado pelo colega Jairo Maia mudei a linha da hwgui e esse erro específico foi corrigido, recebo apenas três linhas com erros veja acima; Agora quero saber DUAS COISAS:

1) Preciso realmente usar essas linhas em todos os meus arquivos .HBP para compilar usando Hwgui ?

2) Qual o caminho da outras linhas ( procmisc, hbxml, hwgdebug ) se for necessário.



Obrigado pela paciência, povo.
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Compilar incluindo "contrib" - Básico .HBP

Mensagem por JoséQuintas »

Não está encontrando as LIBs da HWGUI.

Sugestão:
Se é que já não existe, crie um arquivo HWGUI.HBC

Nele indique LIBs, path de LIBs e path de includes da HWGUI

hwgui.hbc
-libs=nome das libs
-libpaths=pasta das libs
-incpaths=pasta dos arquivos ch

Coloque dentro da pasta \harbour\add-ons

Caso venha a se tornar definitivo, pode também criar hbmk.hbc, dentro da pasta \harbour\bin e colocar nele tudo que usa de padrão em todos os projetos.

Caso a hwgui já tenha um HBC, então basta criar indicando o hbc da hwgui e a pasta do hbc dela.

\harbour\addons\qualquer.hbc ou \harbour\bin\hbmk.hbc
-libs=hwgui.hbc

-libspaths=pasta do hbc da hwgui

A grosso modo, só precisa dar um jeito pro Harbour encontrar a pasta da HWGUI.
Se ela tem hbc, seria somente a pasta do hbc.
Se ela não tem hbc próprio, é criar um.

Vale pra qualquer LIB.

De quebra, se existir um HBX, se colocar em addons já entra da pesquisa do hbmk2. hbmk2 -find função

Ou isso, ou colocar no projeto.
Lembrando que precisa indicar LIBs, pastas de include, pastas de LIB, etc.
Um único HBC com tudo parece ser mais interessante.

Nota:
a vantagem da HBC na própria pasta da HWGUI, é que tudo é indicado por posição relativa, por exemplo .\lib, .\include
Só colocaria um HBC pro Harbour saber aonde está o HBC da hwgui.
No projeto bastaria hwgui.hbc
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

Compilar incluindo "contrib" - Básico .HBP

Mensagem por JoséQuintas »

Confirmei aqui, e a hwgui já tem um HBC, isso reduz a informar somente aonde ela está.

no projeto:

Código: Selecionar todos

hwgui.hbc
-Lpasta-de-hwgui.hbc
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