Como compilar em 64-Bits HMG 3.4.4
Moderador: Moderadores
-
microvolution
- Usuário Nível 5

- Mensagens: 1231
- Registrado em: 02 Set 2011 22:17
- Contato:
Como compilar HMG 3.4.4 usando .BAT
boa noite nobres professores!
Não sei se é o tópico correto, mas, evitar de criar mais um desnecessariamente...
vejam o meu problema.
eu compilo via HMG 3.4.4.... mas toda vez que tendo criar um .BAT me esbarro nalgumas coisas...
já consegui bastante avanço...
o erro atual que não consegui entender é o seguinte no código do log abaixo:
eu não coloquei essas libs e nem uso MYSQL, como descubro qual dos meus PRGs está chamando essas 4 LIBs desconhecidas por mim?
obs.:
1) não estou compilando com 64 bits, apesar de estar numa máquina com w10 64;
2) retirei a criação do -oNOME.EXE pois estava dando a mensagem de erro: no such file or directory;
3) na compilação via IDE/HMG (F5) não dá esse erro.
4) só uso a IDE/HMG pra facilitar a inclusão das LIBs, edição dos PRGs e compilação/linkedição... mais nada. Não a uso para criação de forms.
Não sei se é o tópico correto, mas, evitar de criar mais um desnecessariamente...
vejam o meu problema.
eu compilo via HMG 3.4.4.... mas toda vez que tendo criar um .BAT me esbarro nalgumas coisas...
já consegui bastante avanço...
o erro atual que não consegui entender é o seguinte no código do log abaixo:
Código: Selecionar todos
c:/hb34/comp/mingw32/bin/../lib/gcc/i686-w64-mingw32/5.2.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhbmysql
c:/hb34/comp/mingw32/bin/../lib/gcc/i686-w64-mingw32/5.2.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhbfimage
c:/hb34/comp/mingw32/bin/../lib/gcc/i686-w64-mingw32/5.2.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhbpgsql
c:/hb34/comp/mingw32/bin/../lib/gcc/i686-w64-mingw32/5.2.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lsddmy
collect2.exe: error: ld returned 1 exit status
hbmk2 [DEMObat]: Erro: Executando linkeditor. 1
obs.:
1) não estou compilando com 64 bits, apesar de estar numa máquina com w10 64;
2) retirei a criação do -oNOME.EXE pois estava dando a mensagem de erro: no such file or directory;
3) na compilação via IDE/HMG (F5) não dá esse erro.
4) só uso a IDE/HMG pra facilitar a inclusão das LIBs, edição dos PRGs e compilação/linkedição... mais nada. Não a uso para criação de forms.
Grato,
MICROVOLUTION - 16 anos Evoluindo Com Você!
Você já leu a Bíblia hoje?
João 3:16 - Porque Deus amou ao mundo de tal maneira que deu seu Único Filho para que todo aquele que nEle crê não pereça mas tenha a Vida Eterna!
MICROVOLUTION - 16 anos Evoluindo Com Você!
Você já leu a Bíblia hoje?
João 3:16 - Porque Deus amou ao mundo de tal maneira que deu seu Único Filho para que todo aquele que nEle crê não pereça mas tenha a Vida Eterna!
Como compilar em 64-Bits HMG 3.4.4
Mustafa, ao compilar em 64 bits, da erro, pois não encontra a função MySQL_Escape_String. Veja o erro que ocorre:mustafa escreveu:Hola NiltonGM :
Mira haber si te puede servir
http://www.hmgforum.com/viewtopic.php?f ... a&start=90
Saludos
Mustafa
Código: Selecionar todos
hbmk2: Linkando... eMailCTe.exe
.hbmk/win/mingw64/funcoes.o:funcoes.c:(.data+0x930): undefined reference to `HB_FUN_MYSQL_ESCAPE_STRING'
.hbmk/win/mingw64/MySQL_Conect.o:MySQL_Conect.c:(.data+0xf0): undefined reference to `HB_FUN_TMYSQLSERVER'
collect2.exe: error: ld returned 1 exit status
hbmk2[eMailCTe]: Erro: Executando linkeditor. 1
gcc.exe .hbmk/win/mingw64/Main.o .hbmk/win/mingw64/class_tms.o .hbmk/win/mingw64/envia_email.o .hbmk/win/mingw64/funcoes.o .hbmk/win/mingw64/monitoraerros.o .hbmk/win/mingw64/monitoramail.o .hbmk/win/mingw64/MySQL_Conect.o .hbmk/win/mingw64/MySQL_Desconect.o .hbmk/win/mingw64/MySQL_ExecQuery.o .hbmk/win/mingw64/Opcoes.o .hbmk/win/mingw64/RegistraBD.o .hbmk/win/mingw64/UpLoadEvents.o .hbmk/win/mingw64/Util_MySendMail.o .hbmk/win/mingw64/_hbmkaut_Main.o P:/Harbours/apoio_tms/CTeMail/_temp.o -pthread -static-libgcc -static-libstdc++ -static -lpthread -mwindows -Wl,--start-group -l"hmg-64" -l"crypt-64" -l"edit-64" -l"editex-64" -l"graph-64" -l"ini-64" -l"report-64" -l"hfcl-64" -lmsvfw32 -lvfw32 -l"hbvpdf-64" -lhbct -lhbwin -lhbmzip -lminizip -lhbmemio -lhbmisc -lhbtip -lsqlite3 -lhbsqlit3 -lsddodbc -lrddsql -lhbodbc -lodbc32 -lhbhpdf -lhbnetio -lxhb -lpng -llibhpdf -lhbzebra -lsistrom_aux -lhbextern -lhbdebug -lhbvmmt -lhbrtl -lhblang -lhbcpage -lgtcgi -lgtpca -lgtstd -lgtwin -lgtwvt -lgtgui -lhbrdd -lhbuddall -lhbusrrdd -lrddntx -lrddcdx -lrddnsx -lrddfpt -lhbrdd -lhbhsx -lhbsix -lhbmacro -lhbcplr -lhbpp -lhbcommon -lhbmainwin -lkernel32 -luser32 -lgdi32 -ladvapi32 -lws2_32 -liphlpapi -lwinspool -lcomctl32 -lcomdlg32 -lshell32 -luuid -lole32 -loleaut32 -lmpr -lwinmm -lmapi32 -limm32 -lmsimg32 -lwininet -lhbpcre -lhbzlib -Wl,--end-group -oeMailCTe.exe -L"C:/hmg.3.4.4/harbour-64/lib/win/mingw64" -L"C:/hmg.3.4.4/lib-64"
hbmk2: Dica: Instale o pacote hbmysql e adicione as op��es 'hbmysql.hbc'
faltando nas fun��es: TMySQLServer(), mysql_escape_string()Grato.
Nilton Medeiros
nilton@sistrom.com.br
nilton@sistrom.com.br
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Como compilar em 64-Bits HMG 3.4.4
A LIB pra MySQL, assim como as libs curl e ssl e outras, dependem de arquivos que NÃO vém no Harbour.
Elas contém direitos autorais, e dependem de versões, por isso não vém junto.
Essas são OPCIONAIS, o Harbour SÓ gera se existir tudo que precisa pra elas.
E só vai dar falta se tentar usar alguma função delas.
QUALQUER Harbour gera pra qualquer compilador, seja 32 ou 64 bits.
MAS.... precisa das LIBs do Harbour de cada compilador.
harbour\\lib\win\bcc
harbour\\lib\win\bcc64
harbour\\lib\win\mingw
harbour\\lib\win\mingw64
etc.
Se tiver todas, gera pra qualquer coisa.
Por isso aí funciona 32 bits e dá falta em 64 bits, porque a pasta \lib\mingw tem tudo, mas a pasta \lib\mingw64 está incompleta.
E a falta aparece somente na linquedição, quando precisa das LIBs.
Qualquer um pode fazer um teste simples em sua máquina, testando outros compiladores:
hbmk2 projeto.hbp -comp=msvc
hbmk2 projeto.hbp -comp=bcc
hbmk2 projeto.hbp -comp=mingw
hbmk2 projeto.hbp -comp=mingw64
A "compilação" com Harbour acontece normal (o Harbour só transforma em C).
Vai dar erro mesmo, é na hora de usar o compilador C, ou a hora de linqueditar.
Ou vão faltar os EXEs do compilador C, ou as LIBs Harbour/C
Elas contém direitos autorais, e dependem de versões, por isso não vém junto.
Essas são OPCIONAIS, o Harbour SÓ gera se existir tudo que precisa pra elas.
E só vai dar falta se tentar usar alguma função delas.
QUALQUER Harbour gera pra qualquer compilador, seja 32 ou 64 bits.
MAS.... precisa das LIBs do Harbour de cada compilador.
harbour\\lib\win\bcc
harbour\\lib\win\bcc64
harbour\\lib\win\mingw
harbour\\lib\win\mingw64
etc.
Se tiver todas, gera pra qualquer coisa.
Por isso aí funciona 32 bits e dá falta em 64 bits, porque a pasta \lib\mingw tem tudo, mas a pasta \lib\mingw64 está incompleta.
E a falta aparece somente na linquedição, quando precisa das LIBs.
Qualquer um pode fazer um teste simples em sua máquina, testando outros compiladores:
hbmk2 projeto.hbp -comp=msvc
hbmk2 projeto.hbp -comp=bcc
hbmk2 projeto.hbp -comp=mingw
hbmk2 projeto.hbp -comp=mingw64
A "compilação" com Harbour acontece normal (o Harbour só transforma em C).
Vai dar erro mesmo, é na hora de usar o compilador C, ou a hora de linqueditar.
Ou vão faltar os EXEs do compilador C, ou as LIBs Harbour/C
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/
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/
