Harbour Utilities / Tools

Harbour :

Harbour  : Harbour compiler

 HbFormat : Formats the source code according to certain criteria

HbIDE  : Visual Development environment for the Harbour and other xBase dialects

Hbi18n : A tool that makes finding applications for other languages

HbMk2    : Ultimate project maker for Harbour applications

HbNetIO  : Harbour NETIO Server

HbPP   : Harbour preprocessor

HbRun  : Console interpreter and .prg/.hrb runner for the Harbour Language

HbTest   : Harbour Regression Test Suite

3rth Party:

rcc.exe  : Qt resource compiler

uic.exe  : Qt User Interface Compiler

upx.exe  : Ultimate Packer for eXecutables

windres  : Resource compiler

Some usage tips

Harbour.exe

Harbour 3.2.0dev (Rev. 18805)
Copyright (c) 1999-2013, http://harbour-project.org/
Syntax:  c:\harbour\bin\harbour.exe <file[s][.prg]|@file> [options]
Options:  /a               automatic memvar declaration
          /b               debug info
          /build           display detailed version info
          /credits         display credits
          /d<id>[=<val>]   #define <id>
          /es[<level>]     set exit severity
          /fn[:[l|u]|-]    set filename casing (l=lower u=upper)
          /fd[:[l|u]|-]    set directory casing (l=lower u=upper)
          /fp[:<char>]     set path separator
          /fs[-]           turn filename space trimming on or off (default)
          /g<type>         output type generated is <type> (see below)
          /gc[<type>]      output type: C source (.c) (default)
                           <type>: 0=compact (default) 1=normal 2=verbose
                                   3=generate real C code
          /gh              output type: Harbour Portable Object (.hrb)
          /gd[.<destext>]  generate dependencies list into (.d) file
          /ge[<mode>]      error output <mode>: 0=Clipper (default)
                                                1=IDE friendly
          /i<path>         #include file search path
          /i[-|+]          disable/enable support for INCLUDE envvar
          /j[<file>]       generate i18n gettext file (.pot)
          /k               compilation mode (type -k? for more data)
          /l               suppress line number information
          /m               compile module only
          /n[<type>]       no implicit starting procedure
                           <type>: 0=no implicit starting procedure
                                   1=no starting procedure at all
                                   2=add starting procedure if necessary
          /o<path>         object file drive and/or path
          /p[<path>]       generate pre-processed output (.ppo) file
          /p+              generate pre-processor trace (.ppt) file
          /q               quiet
          /q0              quiet and don't display program header
          /q2              disable all output messages
          /r:<max>         set maximum number of preprocessor iterations
          /s[m]            syntax check only [minimal for dependencies  
                           list]
          /u[<file>]       use command def set in <file> (or none)
          /u+<file>        add command def set from <file>
          /undef:<id>      #undef <id>
          /v               variables are assumed M->
          /w[<level>]      set warning level number (0..3, default 1)
          /x[<prefix>]     set symbol init function name prefix (for .c
                           only)
          /z               suppress shortcutting (.and. & .or.)
          @<file>          compile list of modules in <file>

Note : After HbMk2, direct use of Harbour.exe not required.

HbFormat.exe

Harbour Source Formatter 3.2.0dev (Rev. 18770)

Copyright (c) 2009-2012, Alexander S.Kresin
http://harbour-project.org/
Syntax:  hbformat [options] [@config] <file[s]>

C:\Harbour\contrib\hbformat\utils\hbformat.ini:
#
# $Id: hbformat.ini 18847 2013-02-13 22:33:19Z vszakats $
#
# Eol: -1 - no change, 0 - OS default, 1 - DOS, 2 - UNIX
#nEol = -1
# If true, convert file name to lower case
#lFCaseLow = no
# If yes, converts all tabs to spaces
#lNoTabs = yes
# If yes, indent code
#lIndent = yes
# If yes, make case conversion
#lCase = yes
# If yes, reformat spaces
#lSpaces = yes
# If yes, indent "Function", "Procedure", "Class", "Method"
#lIndFunc = no
# If yes, indent "Local", "Private", etc. in a function beginning
#lIndVar = yes
# If yes, indent directives
#lIndDrt = no
# If yes, indent "Return"
#lIndRet = yes
# Leftmost indent - amount of spaces
#nIndLeft = 3
# indent - amount of spaces
#nIndNext = 3
# Indent for continuation ( after ';' ) lines - amount of spaces
#nIndCont = 3
# If yes, convert asterisk '*' to '//'
#lCnvAst = yes
# If yes, convert '&&' to '//'
#lCnvAmp = yes
# Number of spaces after /* and // comments ( -1 - no change )
#nSpaceComment = 1
# If yes, convert .NOT. TO !
#lCnvNot = yes
# Case of commands ( -1 - no change, 1 - upper, 2 - lower, 3 - title )
#nCaseCmd = 1
# Case of boolean operators ( -1 - no change, 1 - upper, 2 - lower, 3 - title )
#nCaseBoo = 1
# Case of functions ( -1 - no change, 1 - upper, 2 - lower, 3 - title, 4 - as in pattern )
#nCaseFnc = 4
# Case of functions ( -1 - no change, 1 - upper, 2 - lower, 3 - title )
#nCaseUnk = -1
# Case of directives ( -1 - no change, 1 - upper, 2 - lower, 3 - title )
#nCaseDrt = 2
# Number of spaces after # in directives ( -1 - no change )
#nSpaceDrt = 0
# -1 - no change, 1 - insert empty line before a function ( procedure,class ) declaration, 2 - remove it
#nLineFnc = 1
# -1 - no change, 1 - insert empty line before return, 2 - remove it
#nLineRet = 1
# -1 - no change, 1 - insert empty line before variables declaration, 2 - remove it
#nLineVar = 1
# -1 - no change, 1 - insert empty line before code in function, 2 - remove it
#nLineCode = 1
# Max level of nesting in brackets, while space is added after a comma
#nBr4Comma = 1
# Max level of nesting in brackets, while space is added after/before a bracket
#nBr4Brac = 2
# Extension for a formatted file ( if empty - replace original )
#cExtSave =
# Extension for a backup file
#cExtBack = bak
# List of space separated .hbx files for specifying proper casing of function names
#cHBXList =

Hbi18n.exe

Internationalization (sometimes shortened to “I18N , meaning “I – eighteen letters -N”) is the process of planning and implementing products and services so that they can easily be adapted to specific local languages and cultures, a process called localization . The internationalization process is sometimes called translation or localization enablement .

Harbour i18n .pot/.hbl file manager 3.2.0dev (Rev. 18770)
Copyright (c) 2009-2013, Przemyslaw Czerpak
http://harbour-project.org/
Syntax: hbi18n -m | -g | -a [-o<outfile>] [-e] [-q] <files1[.pot] ...>
    -m          merge given .pot files
    -g          generate .hbl file from given .pot files
    -a          add automatic translations to 1-st .pot file using
                translations from other .pot or .hbl files
    -o<outfile> output file name
                default is first .pot file name with
                .po (merge) or .hbl extension
    -e          do not strip empty translation rules from .hbl files
    -q          quiet mode

HbIDE : Visual Development environment for the Harbour and other xBase dialects

HbIDE

HbNetIO.exe

Harbour NETIO Server 3.2.0dev (Rev. 17976)
Copyright (c) 2009-2012, Przemyslaw Czerpak, Viktor Szakats
http://harbour-project.org/

HbPP.exe

Harbour Preprocessor 3.2.0dev
Copyright (c) 1999-2013, http://harbour-project.org/
 Syntax:  c:\harbour\bin\hbpp <file[.prg]> [options]
 Options:  -d<id>[=<val>]        #define <id>
          -e[<func>]            use <func> as entry function in generated .c
          -i<path>              add #include file search path
          -u[<file>]            use command def set in <file> (or none)
          -c[<file>]            look for ChangeLog file
          -o<file>              creates .c file with PP rules
          -v<file>              creates .h file with version information
          -w                    write preprocessed (.ppo) file
          -q[012]               disable information messages

Note:  if neither -o nor -v is specified then -w is default action

HbTest.exe

Harbour Regression Test Suite
Copyright (c) 1999-2013, Viktor Szakats
http://harbour-project.org/

Syntax:  hbtest [options]

Options:  -h, -?        Display this help.
          -all          Display all tests, not only the failures.
          -skip:<list>  Skip the listed test numbers.

 

3rth Party :

 rcc.exe  : ( Qt resource compiler )

Enter  rcc -? for options.

uic.exe  : ( Qt User Interface Compiler )

Enter  uic –help for options.

UPX.exe (Ultimate Packer for eXecutables)

Enter  upx -? for options.

windres  : ( Resource compiler )

Enter  windres3011 –help for options.

Advertisements

2 responses to “Harbour Utilities / Tools

  1. Pingback: Harbour Utilities / Tools | Viva Clipper !

  2. Pingback: Harbour Reference Guide Summary | Viva Clipper !

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s