Building harbour by myself

377 views
Skip to first unread message

Luigi Ferraris

unread,
Oct 25, 2012, 11:56:27 AM10/25/12
to harbou...@googlegroups.com
Hi to everyone.
I'm very happy because I'm able to build Harbour by myself, but I need some clarification.
I'm working on WindowsXp and I've installed subversion. Normally, I download Harbour into a subfolder (ie. "svn update D:\xRepositories\Harbour\harbourcvs") and
then I export in other subfolder (ie. "svn export D:\xRepositories\Harbour\harbourcvs D:\xRepositories\Harbour\exported --force"); in this way I keep clean downloaded distribution (ie I can remove "exported" subfolder and re-create a fresh harbour). Finally, I do "win-make.exe", I avoid usage of "win-make install"; nb I've created a batch file with right settings for: MinGw path, HB_COMPILER, HB_WITH_*, etc.

Question #1: is there a way to create files (ie harbour.exe, hbrun.exe, harbour-32.*, etc.) into "bin" folder instead of "bin\win\mingw" OR I must move by myself? Move these files it is a good practice? With binaries distribution, these files are into "bin" folder and "it's" or "it can be" more comfortable.

Question #2: about "links to external components". Is there a way to know what is the best or convenient package to download? For example: Haru.
Into Changelog file, I can read "libharu 2.2.1 -> 2.3.0RC2": so I understand to donwload "2.3.0RC2". For other? ie PostGreSql? I can download the last or not? Where I can read about limits?

TIA

Luigi Ferraris

vszakats

unread,
Oct 25, 2012, 12:38:14 PM10/25/12
to harbou...@googlegroups.com


On Thursday, October 25, 2012 5:56:27 PM UTC+2, Luigi Ferraris wrote:
Hi to everyone.
I'm very happy because I'm able to build Harbour by myself, but I need some clarification.
I'm working on WindowsXp and I've installed subversion. Normally, I download Harbour into a subfolder (ie. "svn update D:\xRepositories\Harbour\harbourcvs") and
then I export in other subfolder (ie. "svn export D:\xRepositories\Harbour\harbourcvs D:\xRepositories\Harbour\exported --force"); in this way I keep clean downloaded distribution (ie I can remove "exported" subfolder and re-create a fresh harbour). Finally, I do "win-make.exe", I avoid usage of "win-make install"; nb I've created a batch file with right settings for: MinGw path, HB_COMPILER, HB_WITH_*, etc.
 

Question #1: is there a way to create files (ie harbour.exe, hbrun.exe, harbour-32.*, etc.) into "bin" folder instead of "bin\win\mingw" OR I must move by myself? Move these files it is a good practice? With binaries distribution, these files are into "bin" folder and "it's" or "it can be" more comfortable.

It won't make much functional difference (except it 
will prevent you from keeping f.e. x86 and x64 builds 
in parallel), but if you want this anyway, you need to 
use 'install'.
 
Question #2: about "links to external components". Is there a way to know what is the best or convenient package to download? For example: Haru.
Into Changelog file, I can read "libharu 2.2.1 -> 2.3.0RC2": so I understand to donwload "2.3.0RC2". For other? ie PostGreSql? I can download the last or not? Where I can read about limits?

libharu source is hosted in the Harbour repo, so you 
don't need to download/install it separately, see note in 
'HOW TO ENABLE OPTIONAL COMPONENTS BEFORE BUILD' 
section.

As for limits, the closest is /package/winuni/RELNOTES, 
which I use to update when I upgrade my own copies, 
but it's not a definitive limit, just the lastest ever tested 
by me in this case. Usually the problem is when you use 
some older-than-ever-tested version, it used to happen 
with old/exotic *nix distros.

As general rule the latest is usually safe unless some 
package made compatibility breaking changes, but this 
doesn't happen very often. Report it on the dev list if it 
breaks on you.

-- Viktor

Klas Engwall

unread,
Oct 25, 2012, 1:25:01 PM10/25/12
to harbou...@googlegroups.com
Hi Luigi,

In addition to what Viktor said ...

> Question #1: is there a way to create files (ie harbour.exe, hbrun.exe,
> harbour-32.*, etc.) into "bin" folder instead of "bin\win\mingw" OR I
> must move by myself? Move these files it is a good practice? With
> binaries distribution, these files are into "bin" folder and "it's" or
> "it can be" more comfortable.

The easiest solution is probably to decide if you are going to use
prebuild binaries or build them yourself. Then just set up the path
accordingly once and for all. The best practice is to not change the
tree or move files around in it. If you run into trouble later on, it
will be easier for the group to support you if you have a standard
Harbour tree. And the risk that hbmk2 will stumble over an old version
of a binary or a header file in some forgotten directory is minimized.

Over time you will likely have more than one SVN version on your disk in
different directories. Make sure that your path is pointing to the
correct one, either by renaming the directories, for example from "hb32"
to "hb32old", or by shifting the path in your setup batch file when you
switch revision.

> Question #2: about "links to external components". Is there a way to
> know what is the best or convenient package to download? For example: Haru.
> Into Changelog file, I can read "libharu 2.2.1 -> 2.3.0RC2": so I
> understand to donwload "2.3.0RC2". For other? ie PostGreSql? I can
> download the last or not? Where I can read about limits?

You are not going to build Harbour with "everything" enabled, just the
components you are interested in. So I think it will come natural which
components you upgrade. If you are going to use PostGreSql you will
probably keep an eye on what the PostGres folks are doing and what
happens with the hbpgsql contrib. And read the changelog and the commit
messages all the time to keep up with core and contrib development.

BTW, I hope you are not planning to use the "latest and greatest" SVN
revision of Harbour for production use without first making sure that
there are no serious bugs in the version you downloaded. Follow the
changelog and the developer list closely to decide if your version is
safe or not. Before using your downloaded version, wait until there are
only new features commited and everything is quiet about previous
commits. Check out again if something is reported and then wait for
another while. That will keep you out of trouble.

Regards,
Klas

luigi-gmail

unread,
Oct 25, 2012, 4:17:40 PM10/25/12
to harbou...@googlegroups.com
Hi, many thanks Viktor and Klas

Il 25/10/2012 18.38, vszakats ha scritto:
It won't make much functional difference (except it 
will prevent you from keeping f.e. x86 and x64 builds 
in parallel), but if you want this anyway, you need to 
use 'install'.
and

Il 25/10/2012 19.25, Klas Engwall ha scritto:
The easiest solution is probably to decide if you are going to use prebuild binaries or build them yourself.
For a long time I have used prebuild binaries on Windows; now I want understand something about Linux and for this reason I thought: before I must understand how to build on Windows. Anyway, I'll leave files in the path created by win-make and I will fix my batch commands to create end program in according with this.

Il 25/10/2012 19.25, Klas Engwall ha scritto:
You are not going to build Harbour with "everything" enabled, just the components you are interested in.
You are right.... but using prebuild "all works fine" :-))

Il 25/10/2012 18.38, vszakats ha scritto:
'HOW TO ENABLE OPTIONAL COMPONENTS BEFORE BUILD' 
section.

Thanks and I'm sorry: I read now and I've changed into "SET HB_WITH_LIBHARU=local": that's right? But I see a warning (I rebuild only "...\contrib\hbhpdf")
! Package rebuild... 1 project(s)
D:\xRepositories\Harbour\exported\bin\win\mingw\hbmk2 -quiet -width=0 -autohbm-
@../hbpre -inc -rebuildall ../hbhpdf/3rd/libhpdf/libhpdf.hbp @../hbpost
D:\xRepositories\Harbour\exported\bin\win\mingw\hbmk2 -quiet -width=0 -autohbm-
@../hbpre -inc -rebuildall ../hbhpdf/hbhpdf.hbp @../hbpost
hbmk2: Warning: No import library sources were found. <<<<<<<<<<<<---------- It's all ok?


Il 25/10/2012 19.25, Klas Engwall ha scritto:
BTW, I hope you are not planning to use the "latest and greatest" SVN revision of Harbour for production use without first making sure that there are no serious bugs in the version you downloaded. Follow the changelog and the developer list closely to decide if your version is safe or not. Before using your downloaded version, wait until there are only new features commited and everything is quiet about previous commits. Check out again if something is reported and then wait for another while. That will keep you out of trouble.
It's a long time that I use nightly builds :-))

Best regards and many thanks for these answers and help.

Luigi Ferraris


Reply all
Reply to author
Forward
0 new messages