TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Byron Desnoyers
from: Rob Landley
date: 1995-04-16 14:30:56
subject: Borland and EMX ...

> First of all, the EMX program is well over 3 times larger than the Borland
> version - and it is the *exact* same code.  Is this due to the compiler or
> do OS/2 programs naturally take up more room?

1) 32bit code tends to be about twice as large as 16 bit code.  This is
just the nature of 32bit code (and why a lot of drivers remain 16 bit. 
It's smaller.)

2) Did you remove the symbol table when you linked (-s optiom)?  That
thing's enormous.

3) EMX is capable of making 3 distinct types of .exe files, which are:

A) Unix style a.out files, converted into .exe's.  These are large and
slow, but they can run under both DOS and OS/2.

B) OS/2 style .exe files that require EMX.DLL to run.  (These are the
smallest, but they need a dll to run.)

C) Free-standing OS/2 style .exe files.  (No DLL required, they run on
their own.  This is what all the OTHER OS/2 c++ compilers produce.)

Method A requires no command line options, method B requires -Zomf on the
command line, method C requires both -Zomf and -Zsys on the command line.

I use method C myself, but B is ok if you don't mind distributing a DLL
(It's good for running multiple copies of your program at once.)

Method A should be avoided unless you really really really really need the
thing to run under plain old dos.  It's big and slow.

Rob
 
--- Xblat
* Origin: The Conversation Pit, Marlton NJ 609-985-7553 OS/2 V34 (1:266/30)
SEEN-BY: 105/42 620/243 711/401 409 410 413 430 807 808 809 934 955 712/407
SEEN-BY: 712/515 628 704 713/888 800/1 7877/2809
@PATH: 266/30 40 100 505 3615/50 396/1 270/101 105/103 42 712/515 711/808 809
@PATH: 711/934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.