Page 1 of 1

Como compilar programa mysql con rmake?

Posted: Mon Apr 27, 2020 12:51 am
by FranciscoA
Saludos a todos.

En vista de que XVERCE parece no funcionar más, con versiones actuales de FWH(x), estoy intentando compilar mi programa de Contabilidad MySql 5.1 (lo que he venido haciendo desde hace varios años con XVerce), con el RMAKE de Borland, sin conseguirlo desde hace dos dias.

El rmake.bat de Borland que describo abajo, compila todo bien, sin ningun error, ni mensajes, ni logs.
Sin embargo, al ejecutarlo, al momento de intentar la coneccion con el server, el programa aborta asi nada mas sin ningun mensaje.
El entorno que utilizo tanto en XVerce, como con el rmake, es el mismo, como se aprecia mas abajo.

Alguno de ustedes puede decirme que estoy omitiendo, o que está mal en los datos siguientes?
O, pueden recomendarme otro editor-compilador de codigo?

Code: Select all

#Borland make sample, (c) FiveTech Software 2005-2009

HBDIR=C:\xharbour_bcc582_20120330
BCDIR=C:\bcc582
FWDIR=C:\FWH1204

#change these paths as needed
.path.OBJ = .\obj
.path.PRG = .\
.path.CH  = $(FWDIR)\include;$(HBDIR)\include
.path.C   = .\obj
.path.rc  = .\

#important: Use Uppercase for filenames extensions, in the next two rules!

PRG =  \
WContSql.PRG

# Lo anterior tambien puede hacerse con un .txt asi:   
# !include "PrgsProy.TXT"


PROJECT    : WContSql.EXE

WContSql.exe  : $(PRG:.PRG=.OBJ)
   echo off
   echo $(BCDIR)\lib\c0w32.obj + > b32.bc
   echo obj\WContSql.obj, + >> b32.bc
   #echo $(OBJS), + >> b32.bc
   echo WContSql.exe, + >> b32.bc
   echo WContSql.map, + >> b32.bc
   
   echo $(FWDIR)\lib\FiveHx.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
   
   echo $(HBDIR)\lib\rtl.lib + >> b32.bc
   echo $(HBDIR)\lib\vm.lib + >> b32.bc
   echo $(HBDIR)\lib\gtgui.lib + >> b32.bc
   echo $(HBDIR)\lib\lang.lib + >> b32.bc
   echo $(HBDIR)\lib\macro.lib + >> b32.bc
   echo $(HBDIR)\lib\rdd.lib + >> b32.bc
   echo $(HBDIR)\lib\dbfntx.lib + >> b32.bc
   echo $(HBDIR)\lib\dbfcdx.lib + >> b32.bc
   echo $(HBDIR)\lib\dbffpt.lib + >> b32.bc
   echo $(HBDIR)\lib\hbsix.lib + >> b32.bc
   echo $(HBDIR)\lib\debug.lib + >> b32.bc
   echo $(HBDIR)\lib\common.lib + >> b32.bc
   echo $(HBDIR)\lib\codepage.lib + >> b32.bc
   echo $(HBDIR)\lib\pcrepos.lib + >> b32.bc
   echo $(HBDIR)\lib\ct.lib + >> b32.bc
   echo $(HBDIR)\lib\pp.lib + >> b32.bc
   echo $(HBDIR)\lib\zlib.lib + >> b32.bc
   echo $(HBDIR)\lib\hbzip.lib + >> b32.bc
   echo $(HBDIR)\lib\libmisc.lib + >> b32.bc
   echo $(HBDIR)\lib\tip.lib + >> b32.bc
   echo $(HBDIR)\lib\png.lib + >> b32.bc
   echo $(HBDIR)\lib\mysql.lib + >> b32.bc
   echo $(HBDIR)\lib\libmysql.lib + >> b32.bc
   
   rem Uncomment these two lines to use Advantage RDD
   rem echo $(HBDIR)\lib\rddads.lib + >> b32.bc
   rem echo $(HBDIR)\lib\Ace32.lib + >> b32.bc

   echo $(BCDIR)\lib\cw32.lib + >> b32.bc
   echo $(BCDIR)\lib\import32.lib + >> b32.bc
   echo $(BCDIR)\lib\uuid.lib + >> b32.bc
   echo $(BCDIR)\lib\ws2_32.lib + >> b32.bc  
   echo $(BCDIR)\lib\psdk\odbc32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\rasapi32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\nddeapi.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\msimg32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\psapi.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\gdiplus.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\iphlpapi.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\shell32.lib, >> b32.bc

      
   IF EXIST WContSql.res echo WContSql.res >> b32.bc
   $(BCDIR)\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
   #del b32.bc

.prg.obj:
  $(HBDIR)\bin\harbour $< /L /N /W /Oobj\ /I$(FWDIR)\include;$(HBDIR)\include
  $(BCDIR)\bin\bcc32 -c -tWM -I$(HBDIR)\include -oobj\$& obj\$&.c

WContSql.res : WContSql.rc
#  $(BCDIR)\bin\brc32.exe -r WContSql.rc
 
 
Agradeceré mucho el apoyo que puedan brindarme.
Saludos cordiales.

Re: Como compilar programa mysql con rmake?

Posted: Mon Apr 27, 2020 1:00 am
by FranciscoA
Se me pasó mencionar que también he intentado con el buildx.bat de samples,, con exactamente el mismo resultado.
Gracias

Re: Como compilar programa mysql con rmake?

Posted: Mon Apr 27, 2020 5:13 am
by Antonio Linares
Francisco,

Se genera algún fichero .log ?

Re: Como compilar programa mysql con rmake?

Posted: Mon Apr 27, 2020 2:58 pm
by FranciscoA
Antonio.
Muchas gracias por contestar.
No se genera ningún fichero .log.

Todo el proceso de compilación lo hace bien, sin ningún problema, pero, al correr el .exe, el programa se cierra cuando está conectando con mysql.

Espero estés bien de salud.

Gracias nuevamente.

Re: Como compilar programa mysql con rmake?

Posted: Mon Apr 27, 2020 3:18 pm
by FranciscoA
Antonio,

La respuesta anterior es para el rmake.

He intentado de nuevo con el buildx.bat y el mismo resultado del otro, pero este si deja el siguiente log de compilación. No hay .log cuando aborta el programa.

Este es el .log de compilacion:

Code: Select all

xHarbour Compiler build 1.2.1 (SimpLex) (Rev. 9445)
Copyright 1999-2012, http://www.xharbour.org http://www.harbour-project.org/
Compiling '.\WContSql.prg' and generating preprocessed output to '.\WContSql.ppo'...

//aqui pone una serie de numeros muy extensa

Lines 1432, Functions/Procedures 368
Generating C source output to 'WContSql.c'...
Done.


Este es el buildx.bat:

@ECHO OFF
CLS
ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
ECHO ³ FiveWin for xHarbour 12.04 - Apr. 2012          xHarbour development power ³Ü
ECHO ³ (c) FiveTech, 1993-2012     for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7 ³Û
ECHO ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ECHO ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß

if A%1 == A GOTO :SINTAX
if NOT EXIST %1.prg GOTO :NOEXIST

ECHO Compiling...

if "%FWDIR%" == "" set FWDIR=C:\FWH1204\
if "%XHDIR%" == "" set XHDIR=c:\xharbour_BCC582_20120330
rem if "%2" == "/b" set GT=gtwin
rem if not "%2" == "/b" set GT=gtgui
set GT=gtgui

set hdir=%XHDIR%
set hdirl=%hdir%\lib
set bcdir=c:\bcc582
set fwh=%FWDIR%

%hdir%\bin\harbour %1 /n /i%fwh%\include;%hdir%\include /w /p %2 %3 > comp.log
IF ERRORLEVEL 1 GOTO COMPILEERRORS
@type comp.log

echo -O2 -e%1.exe -I%hdir%\include -I%bcdir%\include %1.c > b32.bc
%bcdir%\bin\bcc32 -M -c -v @b32.bc
:ENDCOMPILE

IF EXIST %1.rc %bcdir%\bin\brc32 -r -I%bcdir%\include %1

echo %bcdir%\lib\c0w32.obj + > b32.bc
echo %1.obj, + >> b32.bc
echo %1.exe, + >> b32.bc
echo %1.map, + >> b32.bc
echo %fwh%\lib\Fivehx.lib %fwh%\lib\FiveHC.lib + >> b32.bc
echo %hdirl%\rtl.lib + >> b32.bc
echo %hdirl%\vm.lib + >> b32.bc
echo %hdirl%\%GT%.lib + >> b32.bc
echo %hdirl%\lang.lib + >> b32.bc
echo %hdirl%\macro.lib + >> b32.bc
echo %hdirl%\rdd.lib + >> b32.bc
echo %hdirl%\dbfntx.lib + >> b32.bc
echo %hdirl%\dbfcdx.lib + >> b32.bc
echo %hdirl%\dbffpt.lib + >> b32.bc
echo %hdirl%\hbsix.lib + >> b32.bc
echo %hdirl%\debug.lib + >> b32.bc
echo %hdirl%\common.lib + >> b32.bc
echo %hdirl%\pp.lib + >> b32.bc
echo %hdirl%\pcrepos.lib + >> b32.bc
echo %hdirl%\ct.lib + >> b32.bc
echo %hdirl%\zlib.lib + >> b32.bc
echo %hdirl%\hbzip.lib + >> b32.bc
echo %hdirl%\png.lib + >> b32.bc
echo %hdirl%\libmysql.lib + >> b32.bc
echo %hdirl%\mysql.lib + >> b32.bc

rem Uncomment these two lines to use Advantage RDD
rem echo %hdir%\lib\rddads.lib + >> b32.bc
rem echo %hdir%\lib\Ace32.lib + >> b32.bc

echo %bcdir%\lib\cw32.lib + >> b32.bc
echo %bcdir%\lib\import32.lib + >> b32.bc
echo %bcdir%\lib\uuid.lib + >> b32.bc
echo %bcdir%\lib\psdk\odbc32.lib + >> b32.bc
echo %bcdir%\lib\psdk\rasapi32.lib + >> b32.bc
echo %bcdir%\lib\psdk\nddeapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\msimg32.lib + >> b32.bc
echo %bcdir%\lib\psdk\psapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\gdiplus.lib + >> b32.bc
echo %bcdir%\lib\psdk\iphlpapi.lib, >> b32.bc

IF EXIST %1.res echo %1.res >> b32.bc

rem uncomment this line to use the debugger and comment the following one
if %GT% == gtwin %bcdir%\bin\ilink32 -Gn -Tpe -s -v @b32.bc
IF ERRORLEVEL 1 GOTO LINKERROR
if %GT% == gtgui %bcdir%\bin\ilink32 -Gn -aa -Tpe -s -v @b32.bc
IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * Application successfully built *
%1
GOTO EXIT
ECHO

rem delete temporary files
@del %1.c

:COMPILEERRORS
@type comp.log
ECHO * Compile errors *
GOTO EXIT

:LINKERROR
ECHO * Linking errors *
GOTO EXIT

:SINTAX
ECHO    SYNTAX: Build [Program]     {-- No especifiques la extensi¢n PRG
ECHO                                {-- Don't specify .PRG extension
GOTO EXIT

:NOEXIST
ECHO The specified PRG %1 does not exist

:EXIT

PAUSE
 
Saludos.

Re: Como compilar programa mysql con rmake?

Posted: Mon Apr 27, 2020 5:11 pm
by jvtecheto
Hola FranciscoA

Por descartar cosas, que version de MySQL utilizas, 32 o 64 bits.?

La DLL que de MySQL no se habra corrompido o algo, yo utilizo MariaDB para mis pruebas , no se cual se usa de MySQL, supongo que sera libmySQL.dll ?

Y otra cosa, ya que te has quedado sin IDE porque no pruebas FivEdit de Cristobal, muy estable, y cada dia con mas caracteristicas, yo lo uso a diario y va muy bien.
Yo te puedo ayudar a configurarlo si tienes problemas, y sino podemos siempre esta Cristobal.

Espero que lo soluciones pronto.

Saludos.

Jose.

Re: Como compilar programa mysql con rmake?

Posted: Mon Apr 27, 2020 6:03 pm
by FranciscoA
jvtecheto wrote:Hola FranciscoA

Por descartar cosas, que version de MySQL utilizas, 32 o 64 bits.?

La DLL que de MySQL no se habra corrompido o algo, yo utilizo MariaDB para mis pruebas , no se cual se usa de MySQL, supongo que sera libmySQL.dll ?

Y otra cosa, ya que te has quedado sin IDE porque no pruebas FivEdit de Cristobal, muy estable, y cada dia con mas caracteristicas, yo lo uso a diario y va muy bien.
Yo te puedo ayudar a configurarlo si tienes problemas, y sino podemos siempre esta Cristobal.

Espero que lo soluciones pronto.

Saludos.

Jose.
José, gracias por contestar.

Uso Mysql server 5.1 32b con TMysql. Estoy por pasarme a MariaDB.

LibMySql.dll no se ha corrompido, pues con XVerce no hay ningún problema con la versión FW1204, BCC582, y XHarbour_bcc582_20120330
Posiblemente algo me falta en los ficheros de compilación mencionados.

Voy a seguir tu recomendación respecto a FiveEdit, que no dudo que Cristóbal "lo tiene al balazo".

Gracias, nuevamente.

Re: Como compilar programa mysql con rmake?

Posted: Tue Apr 28, 2020 12:52 am
by FranciscoA
Increíble...!!!

No se cómo se me ocurrió borrar el fichero .RES y al compilar de nuevo, todo empezó a funcionar con RMAKE y BUILDX.BAT.

Ahora, a revisar resto del código del programa, por lo que parecen incompatibilidades.

Agradezco a todos los que trataron de solucionar mi problema.

Saludos.