instalar e configurar harbour e LIBs

Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.

Moderador: Moderadores

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

instalar e configurar harbour e LIBs

Mensagem por JoséQuintas »

Um jeito interessante:

Instalou o Harbour.
Precisa espalhar a notícia pelo computador.
Como faz isso?
configura PATH

Harbour não funciona sozinho, precisa do compilador C.
Instalou o compilador C.
Precisa espalhar a notícia pelo computador.
Como faz isso?
configura PATH

Até aqui, pra conferir, é só mudar pra pastas diferentes e digitar harbour ou hbmk2
Se acusar programa não encontrado é porque não acertou o PATH.

se tiver fonte na pasta, fonte padrão, é compilar.
Se não compilar fonte padrão, harbour não está instalado direito, faltou alguma coisa no PATH.
Ou seu fonte não é padrão, está usando mais coisas do que o harbour tem, harbour incompleto, etc.

Instalou HWGUI.
Não precisa espalhar a notícia, só o harbour é que precisa saber aonde está hwgui.
Como faz isso ?
O mais simples é instalar hwgui na pasta harbour/addons - mas não recomendo, porque se quiser trocar o harbour, pode apagar hwgui
Se não instalou em addons: o mais simples é indicar libpaths em harbour/bin/hbmk.hbc
Se não fez os anteriores: é indicar em CADA PROJETO, em CADA HBP, o PATH e o HWGUI.HBC

Instalou HMG, HMG EXTENDED, OOHG, ou outras.
geralmente dependem de tranqueiras que inventaram, BATs que inventaram, etc.
É configurar as tranqueiras que a LIB pede
Elas até tem HBP/HBC, mas podem inventar coisas diferentes pra ATRAPALHAR.
Se quiser, pode não ser tão fácil, pode criar o HBC das LIBs, indicando aonde estão as coisas da LIB, PATHS e nomes dos arquivos LIB.

É só lembrar do básico:

Instalou uma coisa, aquele coisa precisa ser encontrada, ou pelo sistema operacional, ou pelo harbour.
se é EXE, é pro sistema operacional: PATH
as outras coisas são para o harbour: HBMK.HBC

Resta só o projeto, mas isso é particular de cada projeto. Se o projeto usar uma lib, é indicar o HBC da LIB, se ela tiver um.
Se o projeto não achou.... é porque não tem no computador, ou indicou pasta errada, etc. relacionado a "essa coisa" que tá faltando.
Não precisa mexer no resto, só "nessa coisa", ou na indicação das pastas "dessa coisa".

Se a LIB tem EXE, por exemplo as IDEs, é avisar o sistema operacional, PATH

Mas a LIB isto, a LIB aquilo.... Veja com a LIB. Isso pode mudar de tempos em tempos, não adianta colocar detalhes aqui.

Convém lembrar um adicional:
Algumas coisas ainda estão presas a um uso antigo: HB_INSTALL_PREFIX
Convém configurar essa variável com o PATH do Harbour pra evitar imprevistos, principalmente se misturar várias versões de harbour no computador.
E tudo isso vale pra XHarbour, se usar HBMK2.

E muitos esquecem:
Se tem várias versões de harbour/xharbour espalhadas no computador, o sistema operacional vai procurar na pasta atual, e depois no PATH.
Vai usar a primeira que encontrar, não vai saber se é certa ou errada.
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

instalar e configurar harbour e LIBs

Mensagem por JoséQuintas »

Separado, porque é MEU USO, É PESSOAL, pode servir como sugestão apenas

Código: Selecionar todos

d:\harbour\bin>set path
Path=...d:\harbour\bin;d:\harbour\comp\mingw32
Nem percebi, mingw nem está no PATH, está instalado em harbour/comp/mingw, deve ser por isso que não precisou PATH pra mingw

harbour\bin\hbmk.hbc

Código: Selecionar todos

mt=yes
gui=yes
strip=yes
fullstatic=yes
libpaths=d:/fontes/integra/libjpa
#PRGFLAGS=-m -n -w3 -es2 -ge1 -DMT_EXPERIMENTAL -DHB_NO_GTGUI=YES -DHB_NO_HWGUIDEBUG=YES -DHB_GC_AUTO
#PRGFLAGS=-m -n -w3 -es2 -ge1 -DHB_GC_AUTO
libpaths=d:/fontes/integra/sefazclass/sefazclass
libpaths=d:/fontes/integra/sefazclass/boletoclass
libpaths=d:/fontes/integra/sefazclass/wvgtest
libpaths=d:/fontes/integra/sefazclass/rmchartclass
libpaths=d:/github/hwgui
libpaths=d:/github/hmge
libpaths=d:/github/oohg
Esse acima é usado EM TUDO que eu compilar aqui, qualquer teste usa isso acima, por isso deixei em HMK.HBC na pasta harbour/bin
A linha comentada, é porque se eu apagar, meu programa de configuração coloca de volta. Serve pra misturar HWGUI e GTWVG, mas no momento está fora de uso.

Com isso posso compilar qualquer coisa: console, gtwvg, hwgui, hmg extended ou oohg.
Posso compilar qualquer coisa a qualquer momento, com qualquer lib.

Naquele novo projeto, uso 3 LIBs:

hbmk2 test hwgui.hbc
hbmk2 test hmge.hbc
hbmk2 test oohg.hbc

Se é o melhor jeito eu não sei, mas aqui funciona direitinho, pra mim foi o melhor.

Notas
Porque strip=yes. Assim reduz o EXE no mingw, nem sei se ainda precisa
Porque fullstatic=yes. No LINUX esse NÃO É o default, não depender de DLL, é apenas pra lembrar
Porque GUI=yes. Porque NÃO USO CONSOLE pra nada, nem pra teste.

Uso tudo sempre no mesmo lugar, e sempre do mesmo jeito.
Por isso criei um programa, que confere tudo, e configura se precisar.
Se eu apagar tudo, vém tudo de volta.
Se eu instalar do zero, ele instala e configura tudo.
E o que ele não resolver sozinho, ele me avisa.

Porque não fazem igual?
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

instalar e configurar harbour e LIBs

Mensagem por JoséQuintas »

Como criar um programa pra conferir a configuração?

O que usamos ali.... PATH
O Harbour pode obter isso por GetEnv( "PATH" )
Pode separar a lista de PATHS, já que tem ";" entre cada PATH.
Pode verificar se encontra "harbour.exe", e "hbmk2.exe" e até compilador C nesses PATHs.

Do mesmo jeito pode conferir se tem a variável HB_INSTALL_PREFIX, e outras variáveis

Já que o HBMK.HBC na pasta harbour/bin pode resolver muitas coisas....
No teste anterior vai encontrar a pasta do harbour.
Um MemoRead() vai pegar o conteúdo desse arquivo, é só analisar.
Caso encontre LIBs indicadas, poderia conferir se as pastas existem e o conteúdo está lá.

E tá pronto, um programa pra conferir toda a instalação do harbour e de libs.
E pode avisar o que está faltando, aonde pegamos da vez anterior, em que pasta instalar, etc.

E como faz o programa?
Como assim? um programador perguntando como faz programa?
Peça para o seu programador kkkk
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