----- Original Message -----
From: "Michael Hunley" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Saturday, February 22, 2003 5:40 PM
Subject: Re: Creating N independent programs

| >     If it's code size that you are worried about, assuming all programs
| >would run on the same system (and even if not, maybe), the solution
| >would be a DLL, which includes all the code that you need.
|
| The above is quite possibly correct, but there are considerations.
|
| What OS is this app on (Symbian, Palm, Linux, WinCE)? Depending on the
| device & OS a DLL (or shared lib) won't necessarily get you the smallest
| size, since it includes more code than the equivalent static lib (the
| linker cannot remove code that is actually dead in your particular
| app).  You would have to do that stripping by hand.  If you just make a
set
| of very focused apps using CryptoPP as a static lib, turn on optimize for
| space, you should get the smallest individual app for each one.  However,
| the size of all of them will likely (but not 100%) be larger than the DLL
| version, so depending on your deployment strategy DLL or single app makes
| more sense.  One thing you should definitely do is write your DLL to link
| Crypto++ in as a static lib and only expose the interfaces you
specifically
| need and make specific calls to Crypto++.  This allows the linker to do
the
| best it can for you.
|
| Hope that helps.
|
| michael
|

Hi Michael,

| If it's code size ...
The major issue (IMHO) is to keep the working set down (in a MS
environment), so the app does not have to take page faults.

| What OS ...
The trend for MS desktop applications is to get away from DLLs due to DLL
hell. Memory is basically no longer an issue. I cannot speak intelligently
about Symbian, Palm, Linux, and WinCE (I do have some experience with CE).
Again, I have read it (re: a reference), but I can't find it. Richter talks
about the Link/Loader and DLLs and altered search paths in his book
"Programming Applications for Windows" (ISBN 1-57231-996-8), chapters 19 or
20.

Jeff

Reply via email to