Clipper On Line • Ver Tópico - Arquivos .HBC

Arquivos .HBC

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

Moderador: Moderadores

 

Arquivos .HBC

Mensagempor acelconsultoria » 30 Mar 2017 15:32

Boa tarde,

Gostaria de pedir explicações mais simplificadas aos mais experientes daqui do fórum, sobre como esses arquivos funcionam.

Ao compilar um pequeno exemplo aqui, usando a GTWVW com Harbour 3.2, o HBMK2 já dá a dica pra incluir "\harbour\extras\gtwvw\gtwvw.hbc" na linha de compilação. No help do HBMK2 explica que o arquivo HBC é um arquivo "auxiliar", pois já contém os caminhos e as libs necessárias para compilar o projeto.

Ao abrir o arquivo gtwvw.HBC, me deparei com isto:

{!allwin|!x86}skip=yes

incpaths=.
libpaths=lib/${hb_plat}/${hb_comp}

gt=${hb_name}
gui=yes


De uma forma simples, alguém poderia me dizer como isso funciona ? Nas linhas de comando desse arquivo hbc, não consegui identificar como é que ele "chama" as libs necessárias para a compilação.
Adm. Maickon Sato
Consultoria e Projetos
-------------------------------------------------------
Avatar de usuário

acelconsultoria
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 231
Data de registro: 10 Jan 2006 16:05
Cidade/Estado: Itápolis-SP
Curtiu: 6 vezes
Mens.Curtidas: 6 vezes

Arquivos .HBC

Mensagempor JoséQuintas » 30 Mar 2017 17:56

Não costumo nem olhar o conteúdo, e alguns não entendo bem, apenas uso.

Mas dá pra ter uma idéia.

{!allwin|!x86}skip=yes


se não for plataforma Windows, pula, não serve pra "não Windows".

incpaths=.


include path, o path pra arquivos CH, que no HBP é indicado por -i

libpaths=lib/${hb_plat}/${hb_comp}


O path pra lib. está indicando LIB\plataforma\compilador, que pode ser lib\win\bcc, lib\win\mingw, lib\win\msvc, etc. No HBP é indicado por -L

gt=${hb_name}


a biblioteca visual, vai assumir o nome do HBC, que é GTWVW

gui=yes


Indica que será gerado um EXE GUI, e não um EXE console.

Até que esse dá pra entender.
Tem uns complicados.... rs

Chamou a atenção o ${hb_name}, ${hb_plat} e ${hb_comp}
Talvez aproveite pra usar na ALLGUI e eliminar configuração adicional.
Acaba assumindo o default, melhor do que ficar criando variáveis a mais.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18014
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Arquivos .HBC

Mensagempor JoséQuintas » 30 Mar 2017 18:04

Ah sim....
os HBCs conhecidos, o HBMK2 já busca automático das pastas que ele conhece.

Caso queira criar um HBC pra fivewin, acho que teria que salvá-lo na pasta BIN do Harbour, precisa confirmar isso.

Está aí uma forma do que queria fazer.

Restaria apenas PATH.

Lembrando que pra chamar o HBMK2, ELE PRÓPRIO precisa estar no PATH.
Então de nada adiantaria ele reconhecer PATHs automaticamente, se ele próprio não estiver no PATH.
E se ele estiver no PATH, ele faz parte do Harbour, e o Harbour já fica no PATH.

Conclusão: Use o que usar, a primeira coisa é colocar o Harbour no PATH.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18014
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Arquivos .HBC

Mensagempor lugab » 18 Jun 2018 15:19

Pessoal, bom dia, estou com o mesmo problema do Maickon

Ao tentar compilar um VLIB.PRG ( que pesquei aqui no fórum) com o HB32 recebo essa mensagem:
hbmk2: Dica: Instale o pacote gtwvw e adicione as opções 'gtwvw.hbc' faltando
nas funções: wvw_NoClose()

Como resolver isso ?

Na pasta \hb32\extras\gtwvw tem o seguinte gtwvw.hbc
{!allwin|!x86}skip=yes
incpaths=.
libpaths=lib/${hb_plat}/${hb_comp}
gt=${hb_name}
gui=yes

Meu COMPILA.HBP está assim:
-o32est
-gui
-compr=yes
-m
-strip
-jobs=1
gtwvw.hbc
hbwin.hbc
xhb.hbc
vlib.prg
VersXml.prg
pdfclass.prg
hbhpdf.hbc
FunPDF3.PRG
PreNorM2.prg
prenor02.prg
lugab
lugab
Colaborador

Colaborador
 
Mensagens: 843
Data de registro: 19 Mai 2009 15:58
Curtiu: 126 vezes
Mens.Curtidas: 38 vezes

Arquivos .HBC

Mensagempor JoséQuintas » 18 Jun 2018 17:06

Um detalhe é que no 3.2 é opcional, mas no 3.4 faz parte de contribs.
A pasta contribs entra disponível automático, pelo menos pra pesquisa.

Como no 3.2 a gtwvw fica em extras, talvez precise algo mais.
uma forma simples é acrescentar em \Harbour\bin o arquivo hbmk.hbc e nele indicar a pasta da gtwvw que contém o hbc.

O interessante do HBC é que a configuração é relativa a ele, e não à pasta atual.
Se no HBC estiver include, vai ser a include dentro da pasta aonde está o HBC.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18014
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Arquivos .HBC

Mensagempor lugab » 18 Jun 2018 17:48

Ih, professor, fiz algo errado e sua sugestão não funcionou:
hbmk2: Dica: Instale o pacote gtwvw e adicione as opções 'gtwvw.hbc' faltando nas funções: wvw_NoClose()
Anexos
Gtwvw.jpg
lugab
lugab
Colaborador

Colaborador
 
Mensagens: 843
Data de registro: 19 Mai 2009 15:58
Curtiu: 126 vezes
Mens.Curtidas: 38 vezes

Arquivos .HBC

Mensagempor JoséQuintas » 18 Jun 2018 20:09

OK, plano B, mova a pasta GTWVW pra dentro de contribs, assim fica igual Harbour 3.4

\hb32\contrib\gtwvw

Vai ter que compilar, e mover a lib pra pasta correspondente ao seu compilador C.

Exemplos:

\hb32\lib\win\bcc\gtwvw.lib

\hb32\lib\win\mingw\libgtwvw.a
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18014
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Arquivos .HBC

Mensagempor JoséQuintas » 18 Jun 2018 20:16

Talvez tenha faltado apenas as LIBs nas pastas do Harbour, mesmo no outro caso.
Ou indicar no HBC qual é a lib e onde está. (no outro caso, mantendo pasta original de extras).

Mas estranho: só deu falta de uma única função?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18014
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes




Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 12 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro