Compilar Harbour modo Consola 64bits

User avatar
jrestojeda
Posts: 601
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Compilar Harbour modo Consola 64bits

Post by jrestojeda »

Buenas tardes,
Vi eso que me recomendó Antonio, pero no tengo esa lib, en el directorio de Harbour que bajé no está.
Muchas gracias por la respuesta.
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
Antonio Linares
Site Admin
Posts: 42256
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Compilar Harbour modo Consola 64bits

Post by Antonio Linares »

regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
jrestojeda
Posts: 601
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Compilar Harbour modo Consola 64bits

Post by jrestojeda »

Antonio,
Enlazando esa lib que me pasó, pasa lo mismo mencionado antes.

Code: Select all | Expand

C:\DEMO>c1

C:\DEMO>call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.7.0
** Copyright (c) 2020 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'
hbmk2[DEMO64]: Warning: Non-portable parameter: 'LIB\hbmysql.lib' in
               DEMO64.HBP:4. Use '-LLIB -lhbmysql' option(s) instead.
hbmk2[DEMO64]: Warning: Non-portable parameter: 'LIB\libmariadb64.lib' in
               DEMO64.HBP:5. Use '-LLIB -llibmariadb64' option(s) instead.
Harbour 3.2.0dev (r2405130039)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'DEMO64.PRG'...
Lines 599, Functions/Procedures 1
Generating C source output to 'C:\Users\Esteban\AppData\Local\Temp\hbmk_sh31xk.dir\DEMO64.c'... Done.
Compiling 'MYSQL.prg'...
Lines 43, Functions/Procedures 2
Generating C source output to 'C:\Users\Esteban\AppData\Local\Temp\hbmk_sh31xk.dir\MYSQL.c'... Done.
DEMO64.c
MYSQL.c
Generando código...
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_num_rows sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_LIST_DBS
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_num_fields sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_FETCH_ROW
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_affected_rows sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_AFFECTED_ROWS
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_errno sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_ERRNO
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_error sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_ERROR
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_init sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_REAL_CONNECT
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_real_connect sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_REAL_CONNECT
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_select_db sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_SELECT_DB
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_store_result sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_STORE_RESULT
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_use_result sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_USE_RESULT
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_get_server_version sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_GET_SERVER_VERSION
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_free_result sin resolver al que se hace referencia en la funci¢n MYSQL_RES_release
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_fetch_row sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_FETCH_ROW
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_fetch_lengths sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_FETCH_ROW
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_real_escape_string sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_REAL_ESCAPE_STRING
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_close sin resolver al que se hace referencia en la funci¢n MYSQL_release
DEMO64.exe : fatal error LNK1120: 16 externos sin resolver
hbmk2[DEMO64]: Error: Running linker. 1120
link.exe @C:\Users\Esteban\AppData\Local\Temp\gdkskx.lnk

hbmk2: Hint: Add option 'hbmysql.hbc' for missing function(s):
       mysql_real_escape_string(), mysql_get_server_version(),
       mysql_use_result(), mysql_store_result(), mysql_select_db(),
       mysql_real_connect(), mysql_error(), mysql_errno(),
       mysql_affected_rows(), mysql_fetch_row(), mysql_list_dbs()
Presione una tecla para continuar . . .
C:\DEMO>
Me siguen faltando cosas.
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
Antonio Linares
Site Admin
Posts: 42256
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Compilar Harbour modo Consola 64bits

Post by Antonio Linares »

Eduardo,

Puedes copiar aqui el PRG que deseas construir ? gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
jrestojeda
Posts: 601
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Compilar Harbour modo Consola 64bits

Post by jrestojeda »

Antonio,
Son dos PRGs

El primero es DEMO64.prg

Code: Select all | Expand

#include "inkey.ch"
#include "hbgtinfo.ch"

REQUEST HB_LANG_ES
REQUEST DBFCDX, DBFFPT

// INICIO DEL PROGRAMA //
Function main()

setmode(25,80)

ALERT("Hola mundo 64 Bits")

DemoMySql()

Return nil
El segundo PRG es MYSQL.prg

Code: Select all | Expand

#include "MySql.CH"

// PROBANDO MYQL //
Function DemoMySql()

cHostName  := "localhost"
cHostPort  := "3306"
cUser      := "root"
cPass      := ""
cDataBase  := "Test"

IF Conexion( cHostName, cUser, cPass )

   cQuery:="SELECT CODIGO,DESCRIPCION FROM "+cDatabase+".empresas"
   oQuery:=oServer:Query(cQuery)

   FOR Q=1 TO oQuery:LASTREC()
      oRow:=oQuery:GETROW(Q)

      ALERT( "EMPRESA: "+oRow:FIELDGET(1)+" - RAZON SOCIAL: "+oRow:FIELDGET(2) )

   NEXT

ENDIF

Return nil
//


// CONECTO AL MYSQL //
Function Conexion( cHostName, cUser, cPassWord )

oServer:=TMySQLServer():New(cHostName, cUser, cPassWord )
IF oServer:NetErr()
   ALERT("Error de Conexión con Servidor " + CHR(13) + oServer:Error() )
   oServer:=Nil
   Return .f.
ELSE
   ALERT("Bienvenido a MySql - Harbour Consola 64 Bits")
ENDIF

Return .T.
//
Entiendo que este ejemplo se pude hacer todo en el mismo PRG, pero lo hago de esa manera y con varias funciones para ver como puedo tener más de un PRG en el mismo proyecto con varias funciones.

Muchas gracias Antonio y Enrico por vuestra predisposición.
Saludos,
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
Enrico Maria Giordano
Posts: 8728
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: Compilar Harbour modo Consola 64bits

Post by Enrico Maria Giordano »

Please set harbour warnings to the highest level (-w3). That way, you will find some errors in your code (oServer is not declared nor assigned in DemoMySql() function).
User avatar
Antonio Linares
Site Admin
Posts: 42256
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Compilar Harbour modo Consola 64bits

Post by Antonio Linares »

Estimado Esteban,

Buscando el primer símbolo que no te encuentra:
hbmysql.lib(mysql.obj) : error LNK2019: s¡mbolo externo server_mysql_num_rows sin resolver al que se hace referencia en la funci¢n HB_FUN_MYSQL_LIST_DBS

server_mysql_num_rows no aparece en ningún fichero de los que hay en https://github.com/harbour/core/tree/ma ... ib/hbmysql

Y esto no entiendo como puede suceder.

Estas usando lo más reciente que hay en https://github.com/harbour/core/tree/ma ... ib/hbmysql ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Enrico Maria Giordano
Posts: 8728
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: Compilar Harbour modo Consola 64bits

Post by Enrico Maria Giordano »

I confirm, that symbol does not exist anywhere I could search. You have to double check the libs you are linking.
User avatar
jrestojeda
Posts: 601
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Compilar Harbour modo Consola 64bits

Post by jrestojeda »

Sisi, lo entiendo, pero estoy vinculando todo lo último que me pasaron en este mismo post.
Muy raro realmente...
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
jrestojeda
Posts: 601
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Compilar Harbour modo Consola 64bits

Post by jrestojeda »

Hola a todos.
No se generó otra lib para probar no?
Me sería de gran avance poder hacer funcionar MySql con Harbour 64 bits.
Cualquier otra sugerencia se agradece.
Saludos,
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
Enrico Maria Giordano
Posts: 8728
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: Compilar Harbour modo Consola 64bits

Post by Enrico Maria Giordano »

You are linking a wrong or older and unsupported library somehow. Double check the library list and show it here, please.
User avatar
jrestojeda
Posts: 601
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Compilar Harbour modo Consola 64bits

Post by jrestojeda »

Hola Erico,
Tal como expliqué antes, estoy usando todo lo que me pasó Antonio en este mismo post, yo lo único que puse de mi parte es el código.
El Harbour 64 que estoy usando y las libs fueron proporcionadas en este mismo post.
Tal vez me pasaron versiones incompatibles, o bien yo no estoy entendiendo algunos conceptos.
Saludos,
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
Antonio Linares
Site Admin
Posts: 42256
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Compilar Harbour modo Consola 64bits

Post by Antonio Linares »

Esteban,

En harbour\contrib\hbmysql\tests tienes test.prg
https://github.com/harbour/core/tree/ma ... ysql/tests

prueba a construir ese ejemplo
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply