FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Duda Al Compilar Con Harbour
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Duda Al Compilar Con Harbour
Posted: Mon Jan 12, 2015 08:27 PM
Saludos a Forum

He hecho una prueba, con una aplicacion con xHarbour totoal mente Texto no es Grafica
con xHarbpour se ejeuta bien
Cuando compilo con Harbour al Ejutarlo se cuelga y no muestra nada queda Bloqueado.

He identificado el Problema es cuando adiciono las lirerias de Fivewin FiveH.lib FiveHC.lib
como puedo solucionarlo si necesidad de Retirar las librerias de Fivewin, asi como Funciona en xHarbour

me debe ejecutar asi, es modo texto.

https://www.dropbox.com/s/qznjl8ak0oube ... 1.jpg?dl=0
" rel="noopener">
https://www.dropbox.com/s/qznjl8ak0oube ... 1.jpg?dl=0


Este es link de compilacion

Code (fw): Select all Collapse
K:\v_xharb>k:\bcc582\bin\make -fproy_h.mak 
MAKE Version 5.2  Copyright (c) 1987, 2000 Borland
    echo off
    echo \bcc582\lib\c0x32.obj + > b32.bc
    echo .\obj\PXPMENU.obj  .\obj\PXP0013.obj  .\obj\PXPASIG.obj  .\obj\PXPASIG1.obj  .\obj\PXPASIGa.obj  .\obj\PXPASIG1a.obj  .\obj\PXPBR27.obj  .\obj\PXPBRXX.obj  .\obj\PXPBRXXa.obj  .\obj\PXPTB04.obj  .\obj\PXPTB04a.obj  .\obj\PXPTBROW.obj  .\obj\PXPCONDI.obj  .\obj\PXPCOND1.obj  .\obj\PXPRESQL_1.obj  .\obj\PXPRESQL_1a.obj  .\obj\PXP100.obj  .\obj\PXP101.obj  .\obj\PXP102.obj  .\obj\PXP110.obj  .\obj\PXP200.obj  .\obj\PXP210.obj  .\obj\PXP300.obj  .\obj\PXP301.obj  .\obj\PXP302.obj  .\obj\PXP303.obj  .\obj\PXP304.obj  .\obj\PXP305.obj  .\obj\PXP306.obj  .\obj\PXP307.obj  .\obj\PXP308.obj  .\obj\PXP309.obj  .\obj\PXP310.obj  .\obj\PXP311.obj  .\obj\PXP312.obj  .\obj\PXP313.obj  .\obj\PXP320.obj  .\obj\PXP321.obj  .\obj\PXP322.obj  .\obj\PXP323.obj  .\obj\PXP324.obj  .\obj\PXP330.obj  .\obj\PXP400.obj  .\obj\PXP401.obj  .\obj\PXP403.obj  .\obj\PXP404.obj  .\obj\PXP405.obj  .\obj\PXP406.obj  .\obj\PXP407.obj  .\obj\PXP408.obj  .\obj\PXP409.obj  .\obj\PXP440.obj  .\obj\PXP441.obj  .\obj\PXP442.obj  .\obj\PXP450.obj  .\obj\PXP451.obj  .\obj\PXP452.obj  .\obj\PXP453.obj  .\obj\PXP454.obj  .\obj\PXP460.obj  .\obj\PXP500.obj  .\obj\PXP501.obj  .\obj\PXP502.obj  .\obj\PXP503.obj  .\obj\PXP504.obj  .\obj\PXP505.obj  .\obj\PXP510.obj  .\obj\PXP600.obj  .\obj\PXP601.obj  .\obj\PXP602.obj  .\obj\PXP603.obj  .\obj\PXP604.obj  .\obj\PXP610.obj  .\obj\PXP700.obj  .\obj\PXP701.obj  .\obj\PXP702.obj  .\obj\PXP800.obj  .\obj\PXP801.obj  .\obj\PXP802.obj  .\obj\PXP803.obj  .\obj\PXP804.obj  .\obj\PXP4000.obj  .\obj\PXP4001.obj  .\obj\PXP4002.obj  .\obj\PXP4003.obj  .\obj\PXP4003A.obj  .\obj\PXP4004.obj  .\obj\PXP5000.obj  .\obj\PXP5001.obj  .\obj\PXP5010.obj  .\obj\PXP5011.obj  .\obj\PXP7000.obj  .\obj\PXP7001.obj  .\obj\PXP7002.obj  .\obj\PXP9000.obj  .\obj\PXP9001.obj  .\obj\PXP1065.obj  .\obj\PXP1071.obj  .\obj\PXP3010.obj  .\obj\PXP3011.obj  .\obj\PXPCARGA.obj  .\obj\CXCASIG.obj  .\obj\CXCASIG1.obj  .\obj\CXCASIGa.obj  .\obj\CXCASIG1a.obj  .\obj\CXC1431.obj  .\obj\CXC403.obj  .\obj\CXC404.obj  .\obj\CXC405.obj  .\obj\CXC406.obj  .\obj\CXC407.obj  .\obj\CXC408.obj  .\obj\CXC501.obj  .\obj\CXC602.obj  .\obj\CXCTBR27.obj  .\obj\NXNASIG.obj  .\obj\NXNASIG1.obj  .\obj\NXNASIGa.obj  .\obj\NXNASIG1a.obj  .\obj\NXNTBRO.obj  .\obj\NXN400.obj  .\obj\NXN500.obj  .\obj\NXN501.obj  .\obj\NXN600.obj  .\obj\NXN610.obj  .\obj\NXN611.obj  .\obj\NXN612.obj  .\obj\NXN613.obj  .\obj\NXN614.obj  .\obj\NXN615.obj  .\obj\NXN700.obj  .\obj\NXN1000.obj  .\obj\NXN1001.obj  .\obj\NXN1002.obj  .\obj\NXN1003.obj  .\obj\NXN1004.obj  .\obj\NXN1005.obj  .\obj\NXN1050.obj  .\obj\NXN1051.obj  .\obj\NXN1431.obj  .\obj\NXN2040.obj  .\obj\NXNTBROW.obj  .\obj\NXNTBR21.obj  .\obj\CONASIG.obj  .\obj\CONASIG1.obj  .\obj\CONASIGa.obj  .\obj\CONASIG1a.obj  .\obj\CONTBR28.obj  .\obj\CONT502.obj  .\obj\CONT503.obj  .\obj\CONT510.obj  .\obj\CONT1050.obj  .\obj\CONT1080.obj  .\obj\CONT1081.obj  .\obj\PXPFunc_1.obj  .\obj\PXPFunc_2.obj  .\obj\PXPFunc_3.obj  .\obj\PXPFunc_4.obj  .\obj\PXPClases.obj  .\obj\PXPClavag.obj  .\obj\s3meta2.obj  .\obj\PXPFASTR_1.obj  .\obj\PXPEYSAREP_1.obj  .\obj\PXPFUNCIONES.obj  .\obj\PXP_CLASE.obj  .\obj\PXP1030.obj  .\obj\TEST_DAT.obj  .\obj\CALENDAR.obj  .\obj\PPOR_1.obj  .\obj\PDOS_1.obj  .\obj\PDOSCLI_1.obj  .\obj\CLASERUB_DOS.obj  .\obj\CLIPRT.obj  .\obj\TXTVIEW.obj  .\obj\PCLASRPV.obj , + >> b32.bc
    echo plasmenu.exe, + >> b32.bc
    echo plasmenu.map, + >> b32.bc
    echo \harbour\lib\hblang.lib + >> b32.bc
    echo \harbour\lib\hbvm.lib + >> b32.bc
    echo \harbour\lib\hbrtl.lib + >> b32.bc
    echo \harbour\lib\hbrdd.lib + >> b32.bc
    echo \harbour\lib\hbmacro.lib + >> b32.bc
    echo \harbour\lib\hbpp.lib + >> b32.bc
    echo \harbour\lib\rddntx.lib + >> b32.bc
    echo \harbour\lib\rddcdx.lib + >> b32.bc
    echo \harbour\lib\rddfpt.lib + >> b32.bc
    echo \harbour\lib\hbcommon.lib + >> b32.bc
    echo \harbour\lib\gtwin.lib + >> b32.bc 
    echo \harbour\lib\hbcpage.lib + >> b32.bc
    echo \harbour\lib\hbct.lib + >> b32.bc
    echo \harbour\lib\hbtip.lib + >> b32.bc 
    echo \harbour\lib\hbpcre.lib + >> b32.bc
    echo \harbour\lib\hbhsx.lib + >> b32.bc 
    echo \harbour\lib\hbsix.lib + >> b32.bc 
    echo \harbour\lib\hbdebug.lib + >> b32.bc
    echo \harbour\lib\hbhpdf.lib + >> b32.bc
        echo \harbour\lib\png.lib + >> b32.bc
    echo \harbour\lib\hbzlib.lib + >> b32.bc
    echo \harbour\lib\hbnf-bcc.lib + >> b32.bc
    echo \harbour\lib\xhb.lib + >> b32.bc
    echo \harbour\lib\hbcplr.lib + >> b32.bc
    echo \harbour\lib\hbwin.lib + >> b32.bc
    echo \harbour\lib\gtgui.lib + >> b32.bc
    echo \bcc582\lib\cw32.lib + >> b32.bc
    echo \bcc582\lib\import32.lib + >> b32.bc
    echo \bcc582\lib\psdk\odbc32.lib + >> b32.bc
    echo \bcc582\lib\psdk\nddeapi.lib + >> b32.bc
    echo \bcc582\lib\psdk\iphlpapi.lib + >> b32.bc
    echo \bcc582\lib\psdk\msimg32.lib + >> b32.bc
    echo \bcc582\lib\psdk\rasapi32.lib + >> b32.bc
    echo \bcc582\lib\psdk\psapi.lib + >> b32.bc
    echo \v_xharb\lib\Harb\librub_h.lib + >> b32.bc
    echo \v_xharb\lib\Harb\librub1_h.lib + >> b32.bc
    echo \v_xharb\lib\Harb\grump_h.lib + >> b32.bc
    echo \v_xharb\lib\Harb\libsuper_h.lib + >> b32.bc
    echo \v_xharb\lib\Harb\librepo_h.lib + >> b32.bc
    echo \v_xharb\lib\Harb\filexls_h.lib + >> b32.bc
    echo \v_xharb\lib\Harb\librxls_h.lib + >> b32.bc
    echo \v_xharb\lib\Harb\dolphin_h.lib + >> b32.bc
    echo \v_xharb\lib\Harb\libmysql.lib + >> b32.bc
    echo \v_xharb\lib\Harb\EasyRep_h.lib + >> b32.bc
    echo \fwh\lib\FiveH.lib \fwh\lib\FiveHC.lib  >> b32.bc

    \bcc582\bin\ilink32 -Gn -M -m -s -Tpe -x -ap @b32.bc
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Duda Al Compilar Con Harbour
Posted: Wed Jan 14, 2015 04:47 PM

Ruben,

Si la aplicación es en modo texto, para qué enlazas las librerias de FWH ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: Duda Al Compilar Con Harbour
Posted: Wed Jan 14, 2015 06:14 PM

como indica antonio, para una app modo consola (texto) no es necesario incluir las libs de fivewin, ademas no es necesario ni recomendable incluir los ficheros cabezeras de finwin, por ejemplo fivewin.ch, ya que ha aparte de pseudos comandos, funciones y otras cosas, se evitan, reemplazan y se llaman modulos necesarios exclusivamente para una app en modo gui, asi mismo, debes reemplazar la liberia gtgui.lib por gtwin.lib que es la adecuada para las app modo consola.
ademas, me parece que algunos parametros de ilink32 son especificos para aplicaciones gui, Antonio si me corriges por favor.

lo mas adecuado para que te funcione la cosa es usar la herramienta hbmk2 propia de harbour.
puedes segir usando make de borland, pero teniendo los cuidados necesarios con los parametros del enlazador.

en texto del make que has expuesto, se nota llamadas a librerias exclusivas de modo texto, asi como librerias en modo grafico, debes tener claro que libreria te funciona en que entorno y no mezclarlas, por que si no ni el chapulin colorado te salvara. :-)

salu2
carlos vargas

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: Duda Al Compilar Con Harbour
Posted: Thu Jan 15, 2015 01:39 AM
Antonio Linares wrote:Ruben,

Si la aplicación es en modo texto, para qué enlazas las librerias de FWH ?


Gracias Por su Respuesta.

La razon de incluir las librerias de FWH es porque manejo los reportes con Easyreport y el TXTVIEW, TDosPrn() y la clase TDatabase().
Con xHarbour Funciona de bien de esta manera,
Con Harbour Ya logre que ejecutarla, hice un cambio en la compilacion y coloque las librerias de FWH de ultimo y construye el Ejecutable.
Segun mis pruebas he hecho seguimiento y no esta ejecutando de modo texto si no grafico, por eso se cuelga.
Coloco al Inicio
Hay alguna manera de saber con FWH que modo esta Si Grafico o Texto, es posible hacer esto,
Yo lo hago de esta menera y por eso me doy cuenta que esta en modo grafico
alert("Paso 1") y la muestra tipo grafico.
Creo que puede ser el orden de las librerias, como las deberia colocar.

Tengo una aplicacion de ejemplo pequeña de ejemplo y funciona bien Con Harbour. y compilo con hbmk2 y tambien con MAk sin ningun problema.


No estoy Incluyendo ficheros cabezeras de fivewin , en mi programa , solamente en los que requiero y los manejo como librerias.
si colocara ficheros cabezeras de finwin tendria un conflicto, esto pasa con XHarbour tambien.

Este es mak de xHArbour

Code (fw): Select all Collapse
.path.obj = .\obj
.path.prg = .\prg
.path.ch  = $(FWDIR)\include;$(HBDIR)\include;$(fprg)\include
.path.c   = .\;.\c
.path.rc  = .\rc
.path.res = .\rc


HFLAG1 = /n /m /es2 /gc1
HCLAG1 = -c -tWM

CINCLU =  $(HBDIR)\include;$(fprg)\include;$(FWDIR)\include
CINCL1 =  $(HBDIR)\include
CINCL2 =  $(BCDIR)\include

OBJFIL =  .\obj

NOMEXE =  plasmenu
LIBFIL =  $(fprg)\lib\xHarb

DEFX=__XHARBOUR__
DEXP=__EXPORT__



EXTLIBFILES =
DEFFILE = 
HBFLAGS = -w0
CFLAG1 =  -OS $(SHELL)  $(CFLAGS) -d -c -L$(HBDIR)\lib 

RFLAGS = 
LFLAGS = -L$(BCDIR)\lib\obj;$(BCDIR)\lib;$(HBDIR)\lib -Gn -M -m -s -Tpe -x -ap
IFLAGS = 
LINKER = ilink32
 
ALLOBJ = c0x32.obj $(OBJFILES) $(OBJCFILES)
ALLRES = $(RESDEPEN)
ALLLIB = $(LIBFILES) import32.lib cw32.lib

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


PRG =        \
.\PXPMENU.prg \
.\PXP0013.prg \
.\PXPASIG.prg \
.\PXPASIG1.prg \
.\PXPASIGa.prg \
.\PXPASIG1a.prg \
.\PXPBR27.prg \
.\PXPBRXX.prg \
.\PXPBRXXa.prg \
.\PXPTB04.prg \
.\PXPTB04a.prg \
.\PXPTBROW.prg \
.\PXPCONDI.prg \
.\PXPCOND1.prg \
.\PXPRESQL_1.prg \
.\PXPRESQL_1a.prg \
.\PXP100.prg \  
.\PXP101.prg \  
.\PXP102.prg \  
.\PXP110.prg \  
.\PXP200.prg \
.\PXP210.prg \
.\PXP300.prg \
.\PXP301.prg \
.\PXP302.prg \
.\PXP303.prg \
.\PXP304.prg \
.\PXP305.prg \
.\PXP306.prg \
.\PXP307.prg \
.\PXP308.prg \
.\PXP309.prg \
.\PXP310.prg \
.\PXP311.prg \
.\PXP312.prg \
.\PXP313.prg \
.\PXP320.prg \
.\PXP321.prg \
.\PXP322.prg \
.\PXP323.prg \
.\PXP324.prg \
.\PXP330.prg \
.\PXP450.prg \
.\PXP451.prg \
.\PXP452.prg \
.\PXP453.prg \
.\PXP454.prg \
.\PXP460.prg \
.
.
.
.
.
.\CONASIGa.prg \
.\CONASIG1a.prg \
.\CONTBR28.prg \
.\CONT502.prg \
.\CONT503.prg \
.\CONT510.prg \
.\CONT1050.prg \
.\CONT1080.prg \
.\CONT1081.prg \
.\PXPFunc_1.prg \
.\PXPFunc_2.prg \
.\PXPFunc_3.prg \
.\PXPFunc_4.prg \
.\PXPFunc_5.prg \
.\PXPClases.prg \
.\PXPClavag.prg \
.\s3meta2.prg \
.\PXPFASTR_1.prg \
.\PXPEYSAREP_1.prg \
.\PXPFUNCIONES.prg \
.\PXP_CLASE.prg \
.\PXP1030.prg \
.\TEST_DAT.prg \
.\CALENDAR.prg \
.\PPOR_1.prg \
.\PDOS_1.prg \
.\PDOSCLI_1.prg \
.\CLASERUB_DOS.prg \
.\CLIPRT.prg \
.\TXTVIEW.prg \
.\PCLASRPV.prg \
.\PXPCONVER.prg \
.\PXPEJEMP.prg \

C =            \

CPP =            \

OBJ=$(PRG:.prg=.obj)
OBJS=$(OBJ:.\=.\obj\)

COBJ=$(C:.c=.obj)
COBJS=$(COBJ:.\=.\obj\)

COBJ=$(CPP:.cpp=.obj)
COBJS=$(COBJ:.\=.\obj1\)

PROJECT    : $(NOMEXE).exe

$(NOMEXE).exe  : $(OBJS) $(COBJS) $(NOMEXE).res
   echo off
   echo $(BCDIR)\lib\c0x32.obj + > b32.bc
   echo $(OBJS) $(COBJS), + >> b32.bc
   echo $(NOMEXE).exe, + >> b32.bc
   echo $(NOMEXE).map, + >> b32.bc

   echo $(HBDIR)\lib\lang.lib + >> b32.bc
   echo $(HBDIR)\lib\vm.lib + >> b32.bc 
   echo $(HBDIR)\lib\rtl.lib + >> b32.bc 
   echo $(HBDIR)\lib\rdd.lib + >> b32.bc 
   echo $(HBDIR)\lib\macro.lib + >> b32.bc 
   echo $(HBDIR)\lib\pp.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\common.lib + >> b32.bc 
   echo $(HBDIR)\lib\gtwin.lib + >> b32.bc 
   echo $(HBDIR)\lib\codepage.lib + >> b32.bc 
   echo $(HBDIR)\lib\ct.lib + >> b32.bc 
   echo $(HBDIR)\lib\tip.lib + >> b32.bc 
   echo $(HBDIR)\lib\pcrepos.lib + >> b32.bc 
   echo $(HBDIR)\lib\hsx.lib + >> b32.bc 
   echo $(HBDIR)\lib\hbsix.lib + >> b32.bc 
   echo $(HBDIR)\lib\debug.lib + >> b32.bc
   echo $(HBDIR)\lib\hbhpdf.lib + >> b32.bc 
   echo $(HBDIR)\lib\png.lib + >> b32.bc 
   echo $(HBDIR)\lib\zlib.lib + >> b32.bc
   echo $(HBDIR)\lib\libnf.lib + >> b32.bc

#   echo $(HBDIR)\lib\gtgui.lib + >> b32.bc

   echo $(BCDIR)\lib\cw32.lib + >> b32.bc
   echo $(BCDIR)\lib\import32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\odbc32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\nddeapi.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\iphlpapi.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\msimg32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\rasapi32.lib + >> b32.bc

   echo $(BCDIR)\lib\psdk\psapi.lib + >> b32.bc

   echo $(LIBFIL)\librub_xh.lib + >> b32.bc
   echo $(LIBFIL)\librub1_xh.lib + >> b32.bc
   echo $(LIBFIL)\grump_xh.lib + >> b32.bc
   echo $(LIBFIL)\libsuper_xh.lib + >> b32.bc
   echo $(LIBFIL)\librepo_xh.lib + >> b32.bc
   echo $(LIBFIL)\filexls_xh.lib + >> b32.bc
   echo $(LIBFIL)\librxls_xh.lib + >> b32.bc
   echo $(LIBFIL)\dolphin_xh.lib + >> b32.bc
   echo $(LIBFIL)\libmysql.lib + >> b32.bc
   echo $(LIBFIL)\EasyRep_xh.lib + >> b32.bc
   echo $(LIBFIL)\FwDbg.lib + >> b32.bc
   echo $(FWDIR)\lib\FiveHX.lib $(FWDIR)\lib\FiveHC.lib  >> b32.bc


#   echo $(fprg)\rc\$(NOMEXE).res >> b32.bc
#   IF EXIST $(fprg)\rc\$(NOMEXE).res echo $(fprg)\rc\$(NOMEXE).res >> b32.bc
#   $(BCDIR)\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
 
   $(BCDIR)\bin\ilink32 -Gn -M -m -s -Tpe -x -ap @b32.bc
   del b32.bc
#   del .\obj\*.* /Q
   del .\obj\*.c /Q
   del *.tds /Q
   upx $(NOMEXE).exe -9 

.PRG.OBJ:
  $(HBDIR)\bin\harbour $< $(HFLAG1) -D$(DEXP) -D$(DEFX) /O$(OBJFIL)\ /I$(CINCLU)
  $(BCDIR)\bin\bcc32 $(HCLAG1) -I$(CINCL1) -o$(OBJFIL)\$& $(OBJFIL)\$&.c

.C.OBJ:
  echo $(HCLAG1) -D$(DEFX) -DHB_API_MACROS > tmp
  echo -I$(HBDIR)\include;$(FWDIR)\include >> tmp
  $(BCDIR)\bin\bcc32 -o$(OBJFIL)\$& @tmp $<
  del tmp

.CPP.OBJ:
  echo $(HCLAG1) -D$(DEFX) -DHB_API_MACROS > tmp
  echo -I$(HBDIR)\include;$(FWDIR)\include >> tmp
  $(BCDIR)\bin\bcc32 -o$(OBJFIL)\$& @tmp $<
  del tmp

#$(NOMEXE).res : $(NOMEXE).rc
#  $(BCDIR)\bin\brc32.exe -r -I$(BCDIR)\include $(NOMEXE).rc


Este es dMAk de Harbour

Code (fw): Select all Collapse
HBDIR=\harbour
BCDIR=\bcc582
FWDIR=\fwh
fprg =\v_xharb

#FWDIR=c:\fwTeam

#change these paths as needed

.path.obj = .\obj
.path.prg = .\prg
.path.ch  = $(FWDIR)\include;$(HBDIR)\include;$(fprg)\include
.path.c   = .\;.\c
.path.rc  = .\rc
.path.res = .\rc



#HFLAG1= -n -go 
#L /M /Q  ANTES ASI/L /N /W

HFLAG1 = /n /m /es2 /gc1
HCLAG1 = -c -tWM

CINCLU =  $(HBDIR)\include;$(fprg)\include;$(FWDIR)\include
CINCL1 =  $(HBDIR)\include
CINCL2 =  $(BCDIR)\include

OBJFIL =  .\obj

NOMEXE =  plasmenu
LIBFIL =  $(fprg)\lib\Harb

DEFX=__HARBOUR__
DEXP=__EXPORT__



EXTLIBFILES =
DEFFILE = 
HBFLAGS =  -w0
CFLAG1 =  -OS $(SHELL)  $(CFLAGS) -d -c -L$(HBDIR)\lib 

RFLAGS = 
LFLAGS = -L$(BCDIR)\lib\obj;$(BCDIR)\lib;$(HBDIR)\lib -Gn -M -m -s -Tpe -x -ap
IFLAGS = 
LINKER = ilink32
 
ALLOBJ = c0x32.obj $(OBJFILES) $(OBJCFILES)
ALLRES = $(RESDEPEN)
ALLLIB = $(LIBFILES) import32.lib cw32.lib

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


PRG =        \
.\PXPMENU.prg \
.\PXP0013.prg \
.\PXPASIG.prg \
.\PXPASIG1.prg \
.\PXPASIGa.prg \
.\PXPASIG1a.prg \
.\PXPBR27.prg \
.\PXPBRXX.prg \
.\PXPBRXXa.prg \
.\PXPTB04.prg \
.\PXPTB04a.prg \
.\PXPTBROW.prg \
.\PXPCONDI.prg \
.\PXPCOND1.prg \
.\PXPRESQL_1.prg \
.\PXPRESQL_1a.prg \
.\PXP401.prg \
.\PXP403.prg \
.\PXP404.prg \
.\PXP405.prg \
.\PXP406.prg \
.\PXP407.prg \
.\PXP408.prg \
.\PXP409.prg \
.\PXP440.prg \
.\PXP441.prg \
.\PXP442.prg \
.\PXP450.prg \
.\PXP451.prg \
.\PXP452.prg \
.\PXP453.prg \
.\PXP454.prg \
.
.
.
.\PXPFunc_1.prg \
.\PXPFunc_2.prg \
.\PXPFunc_3.prg \
.\PXPFunc_4.prg \
.\PXPFunc_5.prg \
.\PXPClases.prg \
.\PXPClavag.prg \
.\s3meta2.prg \
.\PXPFASTR_1.prg \
.\PXPEYSAREP_1.prg \
.\PXPFUNCIONES.prg \
.\PXP_CLASE.prg \
.\PXP1030.prg \
.\TEST_DAT.prg \
.\CALENDAR.prg \
.\PPOR_1.prg \
.\PDOS_1.prg \
.\PDOSCLI_1.prg \
.\CLASERUB_DOS.prg \
.\CLIPRT.prg \
.\TXTVIEW.prg \
.\PCLASRPV.prg \
.\PXPCONVER.prg \
.\PXPEJEMP.prg \


C =            \

CPP =            \

OBJ=$(PRG:.prg=.obj)
OBJS=$(OBJ:.\=.\obj\)

COBJ=$(C:.c=.obj)
COBJS=$(COBJ:.\=.\obj\)

COBJ=$(CPP:.cpp=.obj)
COBJS=$(COBJ:.\=.\obj1\)

PROJECT    : $(NOMEXE).exe


$(NOMEXE).exe  : $(OBJS) $(COBJS) $(NOMEXE).res
   echo off
   echo $(BCDIR)\lib\c0x32.obj + > b32.bc
   echo $(OBJS) $(COBJS), + >> b32.bc
   echo $(NOMEXE).exe, + >> b32.bc
   echo $(NOMEXE).map, + >> b32.bc
   echo $(HBDIR)\lib\hblang.lib + >> b32.bc
   echo $(HBDIR)\lib\hbvm.lib + >> b32.bc
   echo $(HBDIR)\lib\hbrtl.lib + >> b32.bc
   echo $(HBDIR)\lib\hbrdd.lib + >> b32.bc
   echo $(HBDIR)\lib\hbmacro.lib + >> b32.bc
   echo $(HBDIR)\lib\hbpp.lib + >> b32.bc
   echo $(HBDIR)\lib\rddntx.lib + >> b32.bc
   echo $(HBDIR)\lib\rddcdx.lib + >> b32.bc
   echo $(HBDIR)\lib\rddfpt.lib + >> b32.bc
   echo $(HBDIR)\lib\hbcommon.lib + >> b32.bc
   echo $(HBDIR)\lib\gtwin.lib + >> b32.bc 
   echo $(HBDIR)\lib\hbcpage.lib + >> b32.bc
   echo $(HBDIR)\lib\hbct.lib + >> b32.bc
   echo $(HBDIR)\lib\hbtip.lib + >> b32.bc 
   echo $(HBDIR)\lib\hbpcre.lib + >> b32.bc
   echo $(HBDIR)\lib\hbhsx.lib + >> b32.bc 
   echo $(HBDIR)\lib\hbsix.lib + >> b32.bc 
   echo $(HBDIR)\lib\hbdebug.lib + >> b32.bc
   echo $(HBDIR)\lib\hbhpdf.lib + >> b32.bc 
   echo $(HBDIR)\lib\png.lib + >> b32.bc
   echo $(HBDIR)\lib\hbzlib.lib + >> b32.bc
   echo $(HBDIR)\lib\hbnf-bcc.lib + >> b32.bc

   echo $(HBDIR)\lib\xhb.lib + >> b32.bc
   echo $(HBDIR)\lib\hbcplr.lib + >> b32.bc
   echo $(HBDIR)\lib\hbwin.lib + >> b32.bc
   echo $(HBDIR)\lib\gtgui.lib + >> b32.bc

   echo $(BCDIR)\lib\cw32.lib + >> b32.bc
   echo $(BCDIR)\lib\import32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\odbc32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\nddeapi.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\iphlpapi.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\msimg32.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\rasapi32.lib + >> b32.bc

   echo $(BCDIR)\lib\psdk\psapi.lib + >> b32.bc

   echo $(LIBFIL)\librub_h.lib + >> b32.bc
   echo $(LIBFIL)\librub1_h.lib + >> b32.bc
   echo $(LIBFIL)\grump_h.lib + >> b32.bc
   echo $(LIBFIL)\libsuper_h.lib + >> b32.bc
   echo $(LIBFIL)\librepo_h.lib + >> b32.bc
   echo $(LIBFIL)\filexls_h.lib + >> b32.bc
   echo $(LIBFIL)\librxls_h.lib + >> b32.bc
   echo $(LIBFIL)\dolphin_h.lib + >> b32.bc
   echo $(LIBFIL)\libmysql.lib + >> b32.bc
   echo $(LIBFIL)\EasyRep_h.lib + >> b32.bc
   echo $(LIBFIL)\FwDbg.lib + >> b32.bc
   echo $(FWDIR)\lib\FiveH.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
 
   $(BCDIR)\bin\ilink32 -Gn -M -m -s -Tpe -x -ap @b32.bc
   del b32.bc
#   del .\obj\*.* /Q
   del .\obj\*.c /Q
   del *.tds /Q
   upx $(NOMEXE).exe -9 

.PRG.OBJ:
  $(HBDIR)\bin\harbour $< $(HFLAG1) -D$(DEXP) -D$(DEFX) /O$(OBJFIL)\ /I$(CINCLU)
  $(BCDIR)\bin\bcc32 $(HCLAG1) -I$(CINCL1) -o$(OBJFIL)\$& $(OBJFIL)\$&.c

.C.OBJ:
  echo $(HCLAG1) -D$(DEFX) -DHB_API_MACROS > tmp
  echo -I$(HBDIR)\include;$(FWDIR)\include >> tmp
  $(BCDIR)\bin\bcc32 -o$(OBJFIL)\$& @tmp $<
  del tmp

.CPP.OBJ:
  echo $(HCLAG1) -D$(DEFX) -DHB_API_MACROS > tmp
  echo -I$(HBDIR)\include;$(FWDIR)\include >> tmp
  $(BCDIR)\bin\bcc32 -o$(OBJFIL)\$& @tmp $<
  del tmp

$(NOMEXE).res : $(NOMEXE).rc
  $(BCDIR)\bin\brc32.exe -r -I$(BCDIR)\include $(NOMEXE).rc


Hice un Seguimiento al Codigo el problema esta con la clase TDataBase()
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com

Continue the discussion