FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour Harbour 2.0 beta1
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 08:07 AM

Hi ,

Today I downloaded the latest Harbour binaries . I wanted to create "my.bc" file for one my project with new hbmk2.exe , but it seems that here are many changes and I can't to do that . What is easiest way to create script for compiling and linking project with 40 prgs for this new harbour ?

With best regards !

Rimantas U.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 08:14 AM

Rimantas,

Do you want to use a make file ?
Or do you plan to use a tool like UEStudio, xMate, Verce, etc ?

For FiveTech development we use make files and also UEStudio projects.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 08:18 AM
Antonio Linares wrote:Rimantas,

Do you want to use a make file ?
Or do you plan to use a tool like UEStudio, xMate, Verce, etc ?

For FiveTech development we use make files and also UEStudio projects.


Hi Antonio ,

I wanna to use simple make file for Bcc - "my.bc" . At this time I'm working with xharbour . But in Harbour are some features which are important for me , so I decided to try them .

Regards !
Rimantas U.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 09:53 AM
Rimantas,

In FWH\makes\BorMake.zip you have a working example. You can easily add as many PRGs and C modules as needed.

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

HBDIR=c:\harbour
BCDIR=c:\bcc55
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 =        \
alert.PRG    \
one.PRG

C =          \
two.C                 

PROJECT    : Alert.exe

Alert.exe  : $(PRG:.PRG=.OBJ) $(C:.C=.OBJ) Alert.res
   echo off
   echo $(BCDIR)\lib\c0w32.obj + > b32.bc
   echo obj\alert.obj obj\one.obj obj\two.obj, + >> b32.bc
   echo alert.exe, + >> b32.bc
   echo alert.map, + >> b32.bc
   echo $(FWDIR)\lib\FiveH.lib $(FWDIR)\lib\FiveHC.lib + >> b32.bc
   echo $(HBDIR)\lib\hbrtl.lib + >> b32.bc
   echo $(HBDIR)\lib\hbvm.lib + >> b32.bc
   echo $(HBDIR)\lib\gtgui.lib + >> b32.bc
   echo $(HBDIR)\lib\hblang.lib + >> b32.bc
   echo $(HBDIR)\lib\hbmacro.lib + >> b32.bc
   echo $(HBDIR)\lib\hbrdd.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\hbsix.lib + >> b32.bc
   echo $(HBDIR)\lib\hbdebug.lib + >> b32.bc
   echo $(HBDIR)\lib\hbcommon.lib + >> b32.bc
   echo $(HBDIR)\lib\hbpp.lib + >> b32.bc
   echo $(HBDIR)\lib\hbwin.lib + >> b32.bc
   echo $(HBDIR)\lib\hbcpage.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\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

   IF EXIST Alert.res echo Alert.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

.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

Alert.res : Alert.rc
  $(BCDIR)\bin\brc32.exe -r Alert.rc
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 10:27 AM
Antonio Linares wrote:Rimantas,

In FWH\makes\BorMake.zip you have a working example. You can easily add as many PRGs and C modules as needed.



Thanks , Antonio ! It seems that this will fit for me .

Another question - compiling I'm getting error alreday on the first main prg - "Syntax error at 'METHOD' " . Here it's a class in FiveWin style . What include or header I must to add to source or change something in .rmk ?
Rimantas U.
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 10:54 AM
Rimantas wrote:
Antonio Linares wrote:Rimantas,

In FWH\makes\BorMake.zip you have a working example. You can easily add as many PRGs and C modules as needed.



Thanks , Antonio ! It seems that this will fit for me .

Another question - compiling I'm getting error alreday on the first main prg - "Syntax error at 'METHOD' " . Here it's a class in FiveWin style . What include or header I must to add to source or change something in .rmk ?


Alreday found ... Added <clipapi.h> & <fwharb.h> headers . But gets erros on stdarg.h ( begining from 23 line to 35 line ) ... :-) . How to solve this problem ?
Rimantas U.
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 10:56 AM
What is the error? Try adding

Code (fw): Select all Collapse
#include "Hbclass.ch"


and remove <clipapi.h> and <fwharb.h>.

EMG
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 11:14 AM
Enrico Maria Giordano wrote:What is the error? Try adding

Code (fw): Select all Collapse
#include "Hbclass.ch"


and remove <clipapi.h> and <fwharb.h>.

EMG


Thanks ... but unsucessful .. :-) The same error as in the beginning . I leaved only <fwharb.h> . It works , but get errors on Borlands header _stddef.h .
Rimantas U.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 11:20 AM

Rimantas,

Have you implemented the Borland setup files ?

viewtopic.php?f=17t=13098

&

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 11:24 AM
Antonio Linares wrote:Rimantas,

Have you implemented the Borland setup files ?
viewtopic.php?f=17&t=13098



Yes , in my BCC bin this .cfg exist and the same info inside . Mine bcc32.cfg :
Code (fw): Select all Collapse
-IC:\BCC55\Include
-LC:\BCC55\Lib
-LC:\BCC55\Lib\PSDK

and ilink32.cfg
Code (fw): Select all Collapse
-LC:\BCC55\Lib;C:\BCC55\Lib\PSDK
Rimantas U.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 12:15 PM

Rimantas,

Are these paths inside the make file, fine for you ?

HBDIR=c:\harbour
BCDIR=c:\bcc55
FWDIR=c:\fwh

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Re: Harbour 2.0 beta1
Posted: Tue Sep 15, 2009 12:37 PM
Strange ... Replaced "HbClass.ch" with "Objects.ch" . The same error - and that this is a place "OVERRIDE METHOD Default IN CLASS TFolder WITH tabDefault" . I commented this line . Now it seems that compiling is working ...

Added - Antonio , this new Harbour 2.0 beta don't support such commands - the sample :
Code (fw): Select all Collapse
   EXTEND CLASS TReport WITH DATA lColTitl
   EXTEND CLASS TReport WITH METHOD ColTitleGr
   OVERRIDE METHOD StartPage IN CLASS TReport WITH RepStartPage


In other prg , I'm using some own possibilities for report , as you an see from source sample . Maybe it's solutions to fix this ?

Regards !
Rimantas U.
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Re: Harbour 2.0 beta1
Posted: Wed Sep 16, 2009 07:05 AM
Rimantas wrote:
Added - Antonio , this new Harbour 2.0 beta don't support such commands - the sample :
Code (fw): Select all Collapse
   EXTEND CLASS TReport WITH DATA lColTitl
   EXTEND CLASS TReport WITH METHOD ColTitleGr
   OVERRIDE METHOD StartPage IN CLASS TReport WITH RepStartPage


In other prg , I'm using some own possibilities for report , as you an see from source sample . Maybe it's solutions to fix this ?


I found this in another forum : http://www.mail-archive.com/harbour@har ... 10408.html . But didn't fully understand how to solve this problem with Teo suggestion . Maybe someone can write some lines of code , please ?

With best regards !
Rimantas U.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Harbour 2.0 beta1
Posted: Wed Sep 16, 2009 10:58 AM
Rimantas,


But in contrib/xhb directory we have xHarbour compatibility library and header (.ch) files which emulate some of xHarbour
features we do not want to add to core code for different reasons. Some of them also use unsupported and undocumented functionality so I think that if I add yet another header file xhbcls.ch with PP commands for above nothing worse will happen. I'll commit it ASAP but please remember that it's undocumented and unsupported by us functionality.

best regards,
Przemek
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 437
Joined: Fri Oct 07, 2005 12:56 PM
Re: Harbour 2.0 beta1
Posted: Thu Sep 17, 2009 05:15 AM
Antonio Linares wrote:Rimantas,


But in contrib/xhb directory we have xHarbour compatibility library and header (.ch) files which emulate some of xHarbour
features we do not want to add to core code for different reasons. Some of them also use unsupported and undocumented functionality so I think that if I add yet another header file xhbcls.ch with PP commands for above nothing worse will happen. I'll commit it ASAP but please remember that it's undocumented and unsupported by us functionality.

best regards,
Przemek


Antonio , thanks ! You directed me to a true path ... :-) . I found this xhcls.ch , added xhb.lib . Now it seems that all is working .

Regards !
Rimantas U.

Continue the discussion