Code: Select all
#include "Fivewin.ch"
FUNCTION MAIN()
? "Hello, World!"
RETURN NIL
EMG
Code: Select all
#include "Fivewin.ch"
FUNCTION MAIN()
? "Hello, World!"
RETURN NIL
No, this is not the cause of the difference. The same sample compiled for console (without FWH) shows: 889.856 bytes with xHarbour and 747.008 bytes with Harbour.Antonio Linares wrote:Harbour is much more mature, robust and complex than xHarbour.
The following list shows the ILINK32 linker options in alphabetical order.
Option Description
@xxxx Uses the response file xxxx
/A:dd Specifies file alignment (backward compatibility switch; use /Af)
/Af:nnnn Specifies file alignment; set nnnn in hex or decimal (0x200 = 512 byte boundaries)
/Ao:nnnn Specifies object alignment; set nnnn in hex or decimal (0x1000 = 4096 byte boundaries)
/aa Builds a 32-bit Windows application
/ad Builds a 32-bit Windows device driver
/ap Builds a 32-bit Windows console application
/B:xxxx Specifies image base address
/b:xxxx Specifies image base address; preserves DLL relocation table
/C Erases all linker-state files before each link
/c Treats case as significant in symbols
/d Delay loads a dll
/D:xxxx Save specified description
/Enn Specifies the number of max errors
/GC Image comment string
/GD Generates a DRC file
/GF:xxxx Set image flags
/Gk Keep output files on error
/Gl Generate .LIB file
/Gpd Generate design-time-only package
/Gpr Generate runtime-only package
/Gn Don’t generate state files (disable incremental linking)
/GS:string Set section flags
/Gz Calculate checksum of target and insert result in PE header
/H:xxxx Specifies application heap reserve size
/Hc:nnnn Specifies application heap commit size
/I Specifies intermediate file output directory
/j Specifies object search paths
/L Specifies library search paths
/M Mangled names in map file
/m Creates map file with public names
/q Supress command line banner
/r Verbose linking
/Rr Replace resources
/S:xxxx Specifies application stack reserve size
/Sc:xxxx Specifies application stack commit size
/s Detailed map file of segments
/Tpd Targets a Windows .DLL file
/Tpe Targets a Windows .EXE file
/Tpp Generate package
/t Displays time spent on link
/Ud.d Specifies user version(major,minor)
/Vd.d Specifies expected Windows version
/v Includes full symbolic debug information
/w Turn all warnings on
/w-dee Disables “.EXE module built with a .DLL or BPL extension” warning
/w-dpl Disables “Duplicate symbol in library” warning
/w-dup Disables “Duplicate symbol” warning
/w-exp Enables “Attempt to export non-public symbol” warning
/w-nou Disables “Creating a package without any units” warning
/w-rty Enables “Unable to perform incremental link - performing full link” warning
/w-srd Disables “Stripping relocations from a DLL may cause it to malfunction” warning
/w-snf Disables “Section not found” warning
/w-uld Disables “Unable to load DLL” warning
/x Suppresses creation of map file
Default map file of segments (no linker switch, map file created by default)
Code: Select all
SET HARBOURCMD=/a /es2 /gc0 /m /n /q /w3
SET INCLUDE=e:\xharbour\include;e:\bcc\include
e:\xharbour\harbour %1
SET HARBOURCMD=
SET INCLUDE=
IF EXIST %1.c e:\bcc\bin\bcc32 +e:\xharbour\xharbour.cfg -c %1.c
IF EXIST %1.obj e:\bcc\bin\ilink32 c0x32 %1, %1.EXE @e:\xharbour\xharbour.rsp
Code: Select all
-6
-a4
-DHB_GUI
-DHB_INCLUDE_WINEXCHANDLER
-DHB_NO_PROFILER
-DHB_NO_TRACE
-DHB_WIN32_IO
-d
-g0
-Ie:\xharbour\include;e:\bcc\include;e:\bcc\include\windows\crtl;e:\bcc\include\windows\sdk
-k-
-O
-O1
-O2
-OS
-Ob
-Oc
-Ov
-v-
-WC
-w
Code: Select all
/ap +
/Gn +
/Le:\xharbour\lib +
/x
rtl +
vm +
common +
lang +
rdd +
macro +
hbsix +
dbfntx +
pcrepos +
dbffpt +
gtwin +
dbfcdx +
ct +
cw32 +
import32 +
iphlpapi
Code: Select all
-M Map with mangled names
-m Map file with publics
-s Detailed segment map