Wednesday, February 16, 2011

How to compile a HMG application with hbmk2 ?

All along, I have always use HMG-IDE by Roberto Lopez to compile  Harbour Minigui  Win 32 apps. The process is actually simple. For example, all I needed to do was to create a project with the IDE and add  a list of the PRGs that needed to be compiled.

If the name of the project is FRS4HMG, frs4hmg.hbp will be created as follows :-

frs4hmg.hbp
=========
frs4w764.prg
lock.prg

By running the frs4hmg project, FRS4HMG.EXE is created

After discovering the versatility of hbmk2 and especially after successfully using hbmk2 to compile a gtWVG app, I was motivated to try the same with building a HMG app with hbmk2.

I took a look at the frs4hmg.hbp and noticed that there was no HMG libs at all. I then looked at the build.bat in the HMG root folder and was overwhelmed :-) As usual, I posted my issue at the HMG Forum and an Italian Member, Luigi was kind enough to walk me through and highlight that it was just impossible to do so with Harbour 2.1


Quote by Luigi

In addition, I have tried to compile HMG3 with the new version of the Harbour compiler but I got many warning with the option /w0 (with /w3, of course, does not generate the hmg library). The generation of an executable is, in any case, impossible for many mistakes: for example with hbmzip (used by Hmg).

frs4hmg.hbp (after looking at Luigi's feedback)
=========

-oFRS4HMG.exe
-prgflag= -w3 -es2 -gtgui
-cflag=-O3

-lhmg -lhbmzip -lhbwin -lhbct -lhbmisc -lxhb -lvfw32 -lmsvfw32

frs4hmg.hbc

frs4w764.prg
locks.prg

frs4hmg.hbc
=========

incpaths=c:\hmg\include
libpaths=c:\hmg\lib


I then hbmk2 frs4hmg.hbp but there were lots of undefined functions in lhmg etc.

Taking the cue, I changed the PATH under environmental variables in Win 7 to C:\hb20;Hb20\bin and

hbmk2 frs4hmg.hbp and bingo FRS4HMG.EXE was duly created !

No comments:

Post a Comment