FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour problema al compilar con xHarbour
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
problema al compilar con xHarbour
Posted: Thu Jul 12, 2012 09:37 AM
Hola Amigos:

Estoy intentando compilar con xharbour.

Este .mak me funciona perfecto en Harbour, pero en xHarbour la aplicación me da un gpf.

Debe de ser un tema de los flags del compilador o del linker.

A ver si por favor alguien me puede ayudar.

Muchas gracias.

Code (fw): Select all Collapse
#Borland make sample, (c) FiveTech Software 2005-2009

HBDIR=c:\xharbour
BCDIR=c:\bcc582
FWDIR=c:\fwh

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

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

PRG =         \
VARIOS.PRG    \
GESTION.PRG 



PROJECT    : GESTION.EXE

GESTION.EXE  : $(PRG:.PRG=.OBJ) GESTION.RES
   @echo off
   echo $(BCDIR)\lib\c0w32.obj + > b32.bc
   echo obj\VARIOS.OBJ obj\GESTION.OBJ, + >> b32.bc
   echo GESTION.EXE, + >> b32.bc
   echo GESTION.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\pp.lib + >> b32.bc
   echo $(HBDIR)\lib\pcrepos.lib + >> b32.bc
   echo $(HBDIR)\lib\codepage.lib + >> b32.bc
   echo $(HBDIR)\lib\ct.lib + >> b32.bc
   echo $(HBDIR)\lib\zlib.lib + >> b32.bc
   echo $(HBDIR)\lib\hbzip.lib + >> b32.bc
   echo $(HBDIR)\lib\png.lib + >> b32.bc
   echo $(HBDIR)\lib\tip.lib + >> b32.bc
   echo $(HBDIR)\lib\libmisc.lib + >> b32.bc


   rem Uncomment these two lines to use Advantage RDD
   echo $(HBDIR)\lib\rddads.lib + >> b32.bc
   echo $(HBDIR)\lib\Ace32.lib + >> b32.bc

   echo $(BCDIR)\lib\wininet.lib + >> b32.bc
   echo $(BCDIR)\lib\ws2_32.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\psapi.lib + >> b32.bc
   echo $(BCDIR)\lib\psdk\rasapi32.lib, >> b32.bc



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

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

.C.OBJ:
  echo -c -tWM -D__HARBOUR__ -DHB_API_MACROS > tmp
  echo -I$(HBDIR)\include;$(FWDIR)\include >> tmp
  $(BCDIR)\bin\bcc32 -oobj\$& @tmp $&.c
  del tmp

GESTION.RES : GESTION.RC
  $(BCDIR)\bin\brc32.exe -r GESTION.RC
Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: problema al compilar con xHarbour
Posted: Thu Jul 12, 2012 12:20 PM

Lucas,

Indica en la lista de los OBs el que es el primero:

echo obj\GESTION.OBJ obj\VARIOS.OBJ, + >> b32.bc

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: problema al compilar con xHarbour
Posted: Thu Jul 12, 2012 12:27 PM

Antonio,

También lo he cambiado sin éxito.

¿A ti te funciona mi script?.

Gracias.

Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: problema al compilar con xHarbour
Posted: Thu Jul 12, 2012 12:43 PM
Antonio:

Muchas gracias por tu pronta respuesta.

Al final estaba enlazando antes de las librerías de fivewin una lib propia (también compilada con xHarbour), en la que tengo cambios implementados en FWH:


Code (fw): Select all Collapse
# Libray directories & filenames #############################################

LIB_NAME         = lib\fivewinx.lib
LIB_PRG_DIR      = source
LIB_OBJ_DIR      = obj
LIB_INCLUDE_DIR  = include


# LIBRARY PRG files (your PRG files go here) #################################

LIB_PRG_LIST =  rpreview.prg \
        meter.prg  \
                msgget.prg \
        varios.prg \
                xbrowse.prg \
                report.prg \
                errsysw.prg 


LIB_C_LIST = 

# Make directives ############################################################

.autodepend
.swap
.suffixes: .prg .hrb .c

# Paths for dependent files ##################################################

.path.prg = $(LIB_PRG_DIR)
.path.c   = $(LIB_PRG_DIR)
.path.hrb = $(LIB_OBJ_DIR)
.path.obj = $(LIB_OBJ_DIR)

# Contruction of the rest dependency lists ###################################

LIB_PRGS  = $(LIB_PRG_LIST)
LIB_C     = $(LIB_C_LIST)
LIB_HRB   = $(LIB_PRG_LIST:.prg=.hrb)
LIB_OBJS  = $(LIB_PRG_LIST:.prg=.obj) $(LIB_C_LIST:.c=.obj)

# FiveWin directories & flags ################################################

FW_INCLUDE_DIR = $(FW_DIR)\include
FW_LIB_DIR     = $(FW_DIR)\lib

# Harbour directories & flags ################################################

HARBOUR_INCLUDE_DIR = $(HB_DIR)\include
HARBOUR_EXE_DIR     = $(HB_DIR)\bin
HARBOUR_LIB_DIR     = $(HB_DIR)\lib
HARBOUR_FLAGS       = -i$(LIB_INCLUDE_DIR);$(HARBOUR_INCLUDE_DIR);$(FW_INCLUDE_DIR) -n -m -w -es2 -gc0
HARBOUR_EXE         = $(HARBOUR_EXE_DIR)\harbour.exe

# Borlanc directories & flags ################################################

BORLANDC_INCLUDE_DIR = $(BCC_DIR)\include
BORLANDC_EXE_DIR     = $(BCC_DIR)\bin
BORLANDC_LIB_DIR     = $(BCC_DIR)\lib
BORLANDC_COMP_FLAGS  = -c -O2 -I$(HARBOUR_INCLUDE_DIR);$(BORLANDC_INCLUDE_DIR)
BORLANDC_COMP_EXE    = $(BORLANDC_EXE_DIR)\bcc32.exe
BORLANDC_LIB_EXE     = $(BORLANDC_EXE_DIR)\tlib.exe

# Dependencies ###############################################################

all: $(LIB_OBJS) $(LIB_HRB) $(LIB_NAME)

# Implicit Rules #############################################################

.prg.hrb:
   $(HARBOUR_EXE) $(HARBOUR_FLAGS) $** -o$@

.c.obj:
   $(BORLANDC_COMP_EXE) $(BORLANDC_COMP_FLAGS) -D__HARBOUR__;HB_API_MACROS -o$@ $**
   $(BORLANDC_LIB_EXE) $(LIB_NAME) -+ $@,,

.hrb.obj:
   $(BORLANDC_COMP_EXE) $(BORLANDC_COMP_FLAGS) -o$@ $**
   $(BORLANDC_LIB_EXE) $(LIB_NAME) -+ $@,,




Supongo que tendré aquí algún flag de xHarbour mal puesto.

Por favor, ¿cómo compilo módulos de Fivewin para añadirlos a mi lib propia que enlazo antes de FiveHx.lib?.

Muchísimas gracias.
Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: problema al compilar con xHarbour
Posted: Thu Jul 12, 2012 11:09 PM
lucas, yo lo que tengo son estos dos archivos puestos en el dir bin de xharbour, ese mismo dir esta agregado a la var de sistema path.
harbour.cfg

CC=BCC32
CFLAGS= -c -D__EXPORT__ -Id:\borland\xharbour\include -d -Ld:\borland\xharbour\lib
VERBOSE=YES
DELTMP=YES


compilar.bat

harbour %1 -n -go -id:\borland\xharbour\include


y para compilar un archivo y que me genere un archivo obj el cual puede ser agregado a una liberia usando tlib ejecuto lo siguiente

compilar programa

y luego

tlib milibreria -+programa.obj
Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: problema al compilar con xHarbour
Posted: Fri Jul 13, 2012 09:21 AM

Carlos,

Muchas gracias. Al final, el GPF era debido a esta función:

FUNCTION curdrive()
return hb_curdrive()

Una vez eliminada, todo OK.

Los flags siguen valiendo los mismos de Harbour. Lo que me intriga mucho son los del Borland, pero no he encontrado ninguna información ni ningún post sobre los mismos.

Además, los diferentes .bats usan parámetros distintos.

Por otra parte, en el foro de xHarbour no obtuve respuesta y el post lo vieron 10 personas.

¿Está xHarbour muerto?.

Además, encontré unos cuantos posts que lo ponen a caldo, diciendo que tiene bugs sin solucionar desde 2009.

¿Es cierto eso?.

Yo lo voy a tener que usar por el tema de SQLRDD. De momento, todo parece que compila y funciona igual que en Harbour, pero estos mensajes demoledores me han bastante miedo la verdad.

¿Tú por qué usas xHarbour?.

Muchas gracias.

Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: problema al compilar con xHarbour
Posted: Fri Jul 13, 2012 05:38 PM

umm you uso xharbour y el svn se ha estado moviendo mucho desde hace 10 dias,
en cuanto al foro, siempre ha sido un foro con poco movimiento.

asi que muerto no esta. ademas considero que xharbour es muy estable.
yo he intentado unoas tres veces usar harbour, pero siempre regreso a xharbour :-)
la verdad no he encontrado nda que me haga abandonarlo, o que harbour me haga su favorito. :-)

salu2
carlos vargas

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: problema al compilar con xHarbour
Posted: Fri Jul 13, 2012 07:10 PM

Carlos,

Muchas gracias.

Mira este link:

https://groups.google.com/forum/?fromgr ... r5eJoatNAJ

La verdad es que da un poco de miedo.

¿Qué problemas tuviste con Harbour?.

Un saludo

Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: problema al compilar con xHarbour
Posted: Sun Jul 15, 2012 03:34 AM

Nada de que preocuparse, posts de hace un tiempo. :-)
en el caso de harbour, la verdad nada me obligo o me enamoro a quedarme con el, no es que sea malo,
la verdad es muy bueno.

la herramienta hbmk2.exe es fuera de serie, es lo unico que
echo en falta en xharbour. sietno que la contraparte hbmke.exe la falta.

en el caso de mt, la verdad es que no me he visto aun en la necesidad de usarlo, de echo lo siento
como un paso a investigar.

el utf8 en harbour que ya se esta termiando de implementar tampoco me he visto en la necesidad de usarlo.

mas que todo por que no salgo del entorno windows.

en mis proyectos, facilmente paso de un entorno a otro con xmate, en el codigo uso mucho las extenciones de xharbour, pero
para harbour hago uso de xhb.lib que me provee compatibilidad con xharbour, y uso profusamente compilacion condicional donde sea necesario para mantener la compatibilidad.

ifdef __HARBOUR

ifndef XHARBOUR

endif

endif

asi que no le miro problema.

mi humilde opinion.
salu2
carlos vargas

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: problema al compilar con xHarbour
Posted: Sun Jul 15, 2012 03:17 PM

Hola Carlos,

Muchas gracias por compartir tu experiencia.

Ahora mismo compilo sin problemas.

No noto nada distinto. Ni tampoco cambio alguno en velocidad.

Se supone que Harbour está mucho mejor construido, últimamente están reelaborando el núcleo para conseguir un código C super puro.

En todo caso, Harbour parece que tiene una comunidad de desarrolladores más potente y activa. xHarbour sigue todavía trabajando con BCC 5.5 de hace 11 años.

En todo caso, hay que estar tremendamente agracedidos a ambas comunidades. Ojalá hubiera surgido una empresa comercial sólida para potenciar el xBase.

Un saludo

Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 883
Joined: Thu Dec 24, 2009 12:46 AM
Re: problema al compilar con xHarbour
Posted: Tue Jul 17, 2012 07:45 PM
Pues yo, me inicié con xHarbour ya que consideraba a Harbour más pesado, ya ni recuerdo por que???....

Tengo 100% compatibilidad con ambos, pero cuando hago el cambio a Harbour, obtengo este problema:
http://forums.fivetechsupport.com/viewtopic.php?f=3&t=24329

El código que uso es basicamente simple, sin hacer uso extensivo o forzado de los comandos, por lo que no creo que el problema sea el codigo, sino Harbour en si...

Considero que ambos projectos se merecen un gran aplauso por el esfuerzo que han hecho sus desarrolladores y contribuyentes, para que nosotros podamos llegar hasta donde hemos llegado...

Por ahora me quedo con xHarbour, hasta que pueda resolver el problema con Harbour...

=====>

Bayron Landaverry
xBasePHP.com
(215)2226600 Philadelphia,PA, USA
MayaBuilders@gMail.com
Guatemala

FWH25.06--Harbour 3.0.0--BCC7.7--UEstudio 10.10
Windows 10

FiveWin, One line of code and it's done...

Continue the discussion