Page 1 of 2
How do xHarbour and Harbour compatible?
Posted: Mon Jul 01, 2013 10:52 am
by dutch
I would like to know, if I move from xHarbour (1.2.3)+BCC582 to Harbour 3.2.0+MSVC2010.
How do they compatible?
Thanks in advance.
Re: How do xHarbour and Harbour compatible?
Posted: Mon Jul 01, 2013 11:16 am
by Antonio Linares
Dutch,
You may easily migrate from xHarbour to Harbour in just few days
You will have all my support and these forums support also
Re: How do xHarbour and Harbour compatible?
Posted: Mon Jul 01, 2013 11:17 am
by Antonio Linares
It may be quite interesting that we detail here all the required changes, so it will help to other users wanting to migrate to Harbour and Microsoft Visual C
Re: How do xHarbour and Harbour compatible?
Posted: Mon Jul 01, 2013 11:24 am
by Richard Chidiak
Dutch
You can easilly migrate from xharbour to harbour
I have added in my main program the following (maybe now it is not needed anymore, Antonio ?)
#ifndef __XHARBOUR__
FUNCTION DbSkipper( n ) ; RETURN __DbSkipper( n )
FUNCTION DbPack() ; RETURN __DbPack()
FUNCTION DbZap() ; RETURN hb_DbZap()
FUNCTION CurDrive( x ) ; RETURN hb_CurDrive( x )
#EndIf
it is almost all i had to do , except for Activex where you need to use the tactivex function that Antonio updated intensively.
Richard
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 1:29 am
by dutch
Dear Antonio,
It will be helpful for who need to move from and to between xHarbour+BCC32 and Harbour+MSVC2010.
Antonio Linares wrote:It may be quite interesting that we detail here all the required changes, so it will help to other users wanting to migrate to Harbour and Microsoft Visual C
Thanks in advance.
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 10:12 am
by Horizon
Antonio,
I have downloaded the last Harbour that is uploaded from you. There is no xhb.ch and hbcompat.ch in include directory.
Don't we need this files in last Harbour? or are they forgetten?
(I have copied them from previous Harbour versions)
Thanks.
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 10:22 am
by Maurizio
Hello ,
for harbour - xHArbour differences looks the file
harbour\doc\xhb-diff.txt
For and Harbour+MSVC2010.
go.bat
Code: Select all
SET PATH=C:\Programmi\Microsoft Visual Studio 10.0\VC\;C:\HARBOUR\bin\;C:\WINDOWS;C:\WINDOWS\SYSTEM32
call "%ProgramFiles%\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"
hbmk2 -inc MASTRO.hbm fwh.hbc
IF ERRORLEVEL 1 GOTO LINKERROR
ECHO ------------------ Application successfully built *
MASTRO.exe
GOTO EXIT
:LINKERROR
ECHO ****************** Linking errors *
GOTO EXIT
:EXIT
mastro.hbm
Code: Select all
# multiple se manca le funzioni va in errore
#http://forums.fivetechsupport.com/viewtopic.php?f=3&t=26076&hilit=force
-ldflag=/force:multiple
-n
-m
-w
-es2
-gc0
-p
-q
-oMASTRO
#-map
-trace
#-traceonly
#--hbdirbin
#--hbdirdyn
#--hbdirlib
#--hbdirinc
#--hbinfo
..\mastro\Mastro.prg
..\mastro\Base.prg
.
.
.
.\MAST_NW\H_MASTROXP.RES
fwh.hbc
Code: Select all
xhb.hbc
{win}incpaths=include
{win}libpaths=lib
{win}gt=gtgui
#incpaths=${HB_PATH}\contrib\hwgui\include
incpaths=C:\FWH\include
#incpaths=C:\Dolphin\include
libpaths=C:\FWH\lib
{msvc}libs=fiveh32 fivehc32
{allmingw}libs=fivehg fivehgc xhb
{bcc}libs=fiveh fivehc xhb
libs=hbziparc
libs=hbmzip
libs=minizip
{win}libs=xhb
{win}libs=comctl32
{win}libs=comdlg32
{win}libs=gdi32
#{win}libs=hbcplr
{win}libs=hbct
#{win}libs=hbpcre
{win}libs=hbsqlit3
{win}libs=hbtip
{win}libs=hbwin
-lhbzlib
{win}libs=hbxpp
{win}libs=msimg32
{win}libs=odbc32
{win}libs=ole32
{win}libs=oleaut32
{win}libs=user32
{win}libs=uuid
{win}libs=vfw32
{win}libs=winmm
{win}libs=winspool
{win}libs=wsock32
{win}libs=psapi
{win}libs=version
{win}libs=oledlg
{win}libs=hbnetio
{win}libs=iphlpapi
Maurizio
http://www.nipeservice.com
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 11:08 am
by Antonio Linares
Hakan,
We don't include xhb.ch and hbcompat.ch as they are not in the include folder of Harbour, in fact they are kept in Harbour contribs folder:
https://github.com/harbour/core/tree/master/contrib/xhb
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 11:10 am
by Marc Vanzegbroeck
Hi,
Is Harbour+MSVC2010 also just creating 1 exe-file like xHarbour+BCC32 does, or does it need some DLL's to be installed for running?
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 11:33 am
by Antonio Linares
Marc,
No DLLs required. Just a single EXE
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 12:31 pm
by norberto
I am doing this migration also could not create (or use this topic), for future users who also want to do?
I have a doubt, I can use vs 2012? is the same process of vs 2010?
My idea is use VS2012 to my Windows phone projects and also to compile my applications in FWH, I wonder if everything works that way.
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 12:37 pm
by Antonio Linares
Norberto,
Yes, you can use VS2012. I have been able to built my apps using Harbour + FWH + MSVS2012
Also, the VS2012 debugger is great. I do recommend it, for low level debugging of our apps.
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 12:57 pm
by norberto
Antonio, this is great, has some thread in the Forum with guides? and for the resources? It would be very productive if we could use VS as an IDE for harbour + fwh, it seems that the express version is free for everyone.
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 1:10 pm
by Antonio Linares
Norberto,
Yes, we can use the Microsoft Visual Studio IDE
https://code.google.com/p/fivewinrt/wik ... _for_WinRT
Here it is working fine
Re: How do xHarbour and Harbour compatible?
Posted: Tue Jul 02, 2013 4:18 pm
by TimStone
I discovered one more thing that is important with the MSVC builds ( 2010 or 2012 )
Be sure to add c:\Program Files (x86)\Visual Studio 10.0\Common7\IDE to your path. There are a few .dll files that are used when you use the Windows compiler and linker that are present I that folder.
The ONLY issue I have right now with MSVC is with RDDADS. I'm still having a problem getting it to actually work with ADS 7 or 8, but it works perfectly with version 9 and above.
I would strongly encourage people to make the move. It is clearly time.
Tim