Página 1 de 1
Arquivos .HBC
Enviado: 30 Mar 2017 15:32
por acelconsultoria
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:
Código: Selecionar todos
{!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.
Arquivos .HBC
Enviado: 30 Mar 2017 17:56
por JoséQuintas
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.
Arquivos .HBC
Enviado: 30 Mar 2017 18:04
por JoséQuintas
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.
Arquivos .HBC
Enviado: 18 Jun 2018 15:19
por lugab
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
Código: Selecionar todos
{!allwin|!x86}skip=yes
incpaths=.
libpaths=lib/${hb_plat}/${hb_comp}
gt=${hb_name}
gui=yes
Meu COMPILA.HBP está assim:
Código: Selecionar todos
-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
Arquivos .HBC
Enviado: 18 Jun 2018 17:06
por JoséQuintas
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.
Arquivos .HBC
Enviado: 18 Jun 2018 17:48
por lugab
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()
Arquivos .HBC
Enviado: 18 Jun 2018 20:09
por JoséQuintas
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
Arquivos .HBC
Enviado: 18 Jun 2018 20:16
por JoséQuintas
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?