Visual interface for Harbour hbmk2.exe

User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Antonio Linares »

Enhanced version with auto save/load projects :-)

https://code.google.com/p/fivewin-contr ... p&can=2&q=
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Antonio Linares »

Enhanced version with HBCs and defines support:

https://code.google.com/p/fivewin-contr ... p&can=2&q=

Image

Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Rimantas
Posts: 437
Joined: Fri Oct 07, 2005 12:56 pm
Location: Utena , Lithuania

Re: Visual interface for Harbour hbmk2.exe

Post by Rimantas »

Antonio Linares wrote:Enhanced version with HBCs and defines support:
[/img]
Can't to add Dolphin lib for harbour+mingw ( libdolphin.a ) . It let to add only .lib files . Maker directed to C compiler MinGW .

Regards!
Rimantas U.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Antonio Linares »

Rimantas,

Please change this in vmh.prg line 294:

Code: Select all

function BuildFldButtons( oFld )

   local oBtn, cFileName

   @ 1, 350 BUTTON oBtn PROMPT "+" OF oFld SIZE 18, 18 PIXEL ;
      ACTION ( cFileName := cGetFile( { "*.prg", "*.c", "*.obj", If( cCCompiler == "MinGW", "*.a", "*.lib" ), "*.rc", "*.hbc" }[ oFld:nOption ],;
      ...
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Rimantas
Posts: 437
Joined: Fri Oct 07, 2005 12:56 pm
Location: Utena , Lithuania

Re: Visual interface for Harbour hbmk2.exe

Post by Rimantas »

Antonio Linares wrote:Rimantas,

Please change this in vmh.prg line 294:

Code: Select all

function BuildFldButtons( oFld )

   local oBtn, cFileName

   @ 1, 350 BUTTON oBtn PROMPT "+" OF oFld SIZE 18, 18 PIXEL ;
      ACTION ( cFileName := cGetFile( { "*.prg", "*.c", "*.obj", If( cCCompiler == "MinGW", "*.a", "*.lib" ), "*.rc", "*.hbc" }[ oFld:nOption ],;
      ...
 
Changed , Rebuild , with lib now is OK . Build own project - get an message "can't find hbmk2.exe" . This first line of your maker is bad : "D:\A\Vmh>set path=c:\mingw\bin" . Standard harbour suggest install mingw in main harbour folder as comp folder . In mine case this will be : D:\A\hb32\comp\mingw . So it must directed true compiler folder . Another error ( D:/A/FWH/lib/fivehg.lib(LEGACY.o):LEGACY.c:(.text+0x5bf): multiple definition of `HB_FUN_OLE2TXTERROR' ) - missed this "-Wl,--allow-multiple-definition" . Where it can de directed ?

Your maker is using system temp directory "Generating C source output to 'C:\Tmp\hbmk_1i0wmy.dir\tarray.c'... Done." . But for me it's better to direct where building must work ...

out.log:

Code: Select all


D:\A\Vmh>set path=c:\mingw\bin 

D:\A\Vmh>D:\A\hb32\bin\hbmk2.exe -comp=mingw -iD:\A\FWH\include -lfivehg -lfivehgc -LD:\A\FWH\lib xhb.hbc -gtgui D:\A\Amdi3\engel.prg D:\A\Amdi3\func.prg D:\A\Amdi3\func_brw.prg D:\A\Amdi3\func_dsg.prg D:\A\Amdi3\func_dt.prg D:\A\Amdi3\tarray.prg   D:\A\hb32\lib\win\mingw\libdolphin.a   
Harbour 3.2.0dev (Rev. 18911)
Copyright (c) 1999-2013, http://harbour-project.org/

...
Lines 3924, Functions/Procedures 4
Generating C source output to 'C:\Tmp\hbmk_1i0wmy.dir\tarray.c'... Done.
D:/A/FWH/lib/fivehg.lib(LEGACY.o):LEGACY.c:(.text+0x5bf): multiple definition of `HB_FUN_OLE2TXTERROR'
D:/A/hb32/lib/win/mingw/libdolphin.a(tdolpexp.o):tdolpexp.c:(.text+0x39): first defined here
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x24): undefined reference to `mysql_close@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x5a): undefined reference to `mysql_free_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1b5): undefined reference to `mysql_escape_string@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2a0): undefined reference to `mysql_real_escape_string@16'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x3ae): undefined reference to `mysql_num_rows@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x3e4): undefined reference to `mysql_data_seek@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x3f2): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x403): undefined reference to `mysql_fetch_lengths@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x4c0): undefined reference to `mysql_get_server_info@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x506): undefined reference to `mysql_get_client_info@0'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x53d): undefined reference to `mysql_commit@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x609): undefined reference to `mysql_init@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x71c): undefined reference to `mysql_real_connect@32'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x769): undefined reference to `mysql_next_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x7dd): undefined reference to `mysql_close@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x822): undefined reference to `mysql_data_seek@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x85a): undefined reference to `mysql_error@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x8bb): undefined reference to `mysql_field_count@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x910): undefined reference to `mysql_free_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x950): undefined reference to `mysql_num_fields@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x961): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x972): undefined reference to `mysql_fetch_lengths@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xa45): undefined reference to `mysql_errno@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xac3): undefined reference to `mysql_list_tables@8'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xade): undefined reference to `mysql_num_rows@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xb06): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xb5f): undefined reference to `mysql_free_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xbce): undefined reference to `mysql_list_dbs@8'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xbe9): undefined reference to `mysql_num_rows@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xc11): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xc6a): undefined reference to `mysql_free_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xcb0): undefined reference to `mysql_num_rows@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xd1d): undefined reference to `mysql_options@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xd8e): undefined reference to `mysql_ping@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xe18): undefined reference to `mysql_real_query@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xe83): undefined reference to `mysql_rollback@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xf03): undefined reference to `mysql_select_db@8'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0xf87): undefined reference to `mysql_list_fields@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x104a): undefined reference to `mysql_num_fields@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1067): undefined reference to `mysql_fetch_field@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x12df): undefined reference to `mysql_num_fields@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x12f0): undefined reference to `mysql_fetch_lengths@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1311): undefined reference to `mysql_data_seek@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x131f): undefined reference to `mysql_num_rows@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x141d): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x148a): undefined reference to `mysql_store_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x14eb): undefined reference to `mysql_use_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x19a6): undefined reference to `mysql_real_escape_string@16'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x19c7): undefined reference to `mysql_escape_string@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1c78): undefined reference to `mysql_server_init@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1c8f): undefined reference to `mysql_init@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1cba): undefined reference to `mysql_options@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1cff): undefined reference to `mysql_real_connect@32'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1d11): undefined reference to `mysql_close@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1d19): undefined reference to `mysql_server_end@0'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1dff): undefined reference to `mysql_data_seek@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1e0d): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x1e1e): undefined reference to `mysql_fetch_lengths@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x20a8): undefined reference to `mysql_num_rows@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x22c3): undefined reference to `mysql_data_seek@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x22d1): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2504): undefined reference to `mysql_num_rows@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x271a): undefined reference to `mysql_num_rows@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2750): undefined reference to `mysql_data_seek@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x275e): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x29ab): undefined reference to `mysql_real_query@12'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x29c1): undefined reference to `mysql_use_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x29e3): undefined reference to `mysql_num_fields@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x29f4): undefined reference to `mysql_fetch_fields@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2dd3): undefined reference to `mysql_fetch_row@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2e73): undefined reference to `mysql_free_result@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2e83): undefined reference to `mysql_error@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2e93): undefined reference to `mysql_sqlstate@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2ea3): undefined reference to `mysql_errno@4'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2f23): undefined reference to `mysql_set_server_option@8'
D:/A/hb32/lib/win/mingw/libdolphin.a(function.o):function.c:(.text+0x2f3e): undefined reference to `mysql_set_server_option@8'
D:/A/FWH/lib/fivehg.lib(GETTASKS.o):GETTASKS.c:(.text+0x180): undefined reference to `GetModuleFileNameExA@16'
D:/A/FWH/lib/fivehgc.lib(RICHEDIT.o):RICHEDIT.C:(.text+0xa45): undefined reference to `OleUIPasteSpecialA@4'
D:/A/FWH/lib/fivehgc.lib(RICHEDIT.o):RICHEDIT.C:(.text+0x12de): undefined reference to `GetFileVersionInfoSizeA@8'
D:/A/FWH/lib/fivehgc.lib(RICHEDIT.o):RICHEDIT.C:(.text+0x1346): undefined reference to `GetFileVersionInfoA@16'
D:/A/FWH/lib/fivehgc.lib(RICHEDIT.o):RICHEDIT.C:(.text+0x1370): undefined reference to `VerQueryValueA@16'
collect2: ld returned 1 exit status

 
Regards !
Rimantas U.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Antonio Linares »

Enhanced version with selectable C compiler path:

https://code.google.com/p/fivewin-contr ... p&can=2&q=

Rimantas, still pending to implement the multiple flag

Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Antonio Linares »

regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Otto
Posts: 4470
Joined: Fri Oct 07, 2005 7:07 pm
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Otto »

Hello Antonio,
can you please show how to use Visual interface.
Are there ini-files to start with the sample prgs.
Thanks in advance
Otto
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org

********************************************************************
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Antonio Linares »

Otto,

To start select your main PRG, then go to settings and select the hbmk2.exe path and your FWH path, click save.

Then click build and you are done :-)

If you have additional PRGs or LIBs, add them from the main folder. that simple :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Otto
Posts: 4470
Joined: Fri Oct 07, 2005 7:07 pm
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Otto »

Hello Antonio,
thank you.

I have a totally clean machine and have installed
New FTDN March/Marzo 2013 (FWH 13.03)

fwh.exe
harbour_bcc582_20130228.zip
harbour_bcc582_20130228.zip

There is no hbmk2.exe in xHarbour.

How can I save my projects?

Thanks in advance
Otto
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org

********************************************************************
User avatar
Otto
Posts: 4470
Joined: Fri Oct 07, 2005 7:07 pm
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Otto »

Dear Antonio,
do I have to add all libs and files which are mentioned in
buildh.bat?

Maybe you can provide a ready INI for testdlg.prg?

Thanks in advance
Otto
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org

********************************************************************
Horizon
Posts: 997
Joined: Fri May 23, 2008 1:33 pm

Re: Visual interface for Harbour hbmk2.exe

Post by Horizon »

Hi Antonio,

1) Can we create console application with vmh.exe (without gtXXX or fw)?

2) Can we create lib with vmh.exe?

3) I have written prg files but vmh.exe cannot compile them. (in clipper with /n parameter)

Thanks.
Regards,

Hakan ONEMLI

Harbour & VS 2019 & FWH 20.12
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Antonio Linares »

Otto,

hbmk2.exe is for Harbour only. It does not work with xHarbour. It does not exist for xHarbour.

You don't need to specify any libraries at all (except your own ones). vmh.exe is just a GUI for hbmk2.exe and hbmk2.exe automatically links all the required libraries.

If you run vmh.exe from your app folder, an ini file will be automatically created with your project files. Really easy and simple :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Antonio Linares »

Hakan,
1) Can we create console application with vmh.exe (without gtXXX or fw)?
Yes, just uncheck "use FWH" :-)
2) Can we create lib with vmh.exe?
Not yet. hbmk2.exe supports it, but not vmh.prg yet
3) I have written prg files but vmh.exe cannot compile them. (in clipper with /n parameter)
Can you compile them using harbour.exe ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Otto
Posts: 4470
Joined: Fri Oct 07, 2005 7:07 pm
Contact:

Re: Visual interface for Harbour hbmk2.exe

Post by Otto »

Hello Antonio,
I get following error:

failed in final assembly (linker or library manager)

c:\FWH\samples>set path=C:\bcc582\bin

c:\FWH\samples>C:\harbour\bin\hbmk2.exe -comp=bcc -ic:\fwh\include -lfiveh -lfivehc -Lc:\fwh\lib -lc:\bcc582\lib\psdk\psapi xhb.hbc -gtgui C:\fwh\samples\xbrwin7b.prg
Harbour 3.2.0dev (Rev. 18881)
Copyright (c) 1999-2013, http://harbour-project.org/
Compiling 'C:\fwh\samples\xbrwin7b.prg'...


Lines 4379, Functions/Procedures 1
Generating C source output to 'C:\Users\SCHULB~1\AppData\Local\Temp\hbmk_e0qft6.dir\xbrwin7b.c'... Done.
C:\Users\SCHULB~1\AppData\Local\Temp\hbmk_e0qft6.dir\xbrwin7b.c:
C:\Users\SCHULB~1\AppData\Local\Temp\hbmk_er9zct.c:
Turbo Incremental Link 5.69 Copyright (c) 1997-2005 Borland
Error: Unresolved external '_HB_FUN_TOLEAUTO' referenced from C:\FWH\LIB\FIVEH.LIB|HARBOUR


Can you please help me.
Thanks in advance
Otto
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org

********************************************************************
Post Reply