Jan,

I am using a bundled shared perl10.dll in one of my library files (a dll with 
other modules in it as well).  I am specifically excluding perl510.dll from my 
executable so I don't waste the 873k of space in my binary and in other dll's.

Good point on the runlib path.  In this particular instance, my application is 
not in the PATH, nor is perl locally installed on the machine - hence the 
reason it's complied in the first place J  But I can see your point on bad 
practice.

Thanks for your insight,

--Joel

PS - nice work on the MS scripting games.  I managed to get them all (and win a 
copy of Vista Ultimate in the process), but they weren't as clean as yours.

From: Jan Dubois [mailto:[EMAIL PROTECTED]
Sent: Wednesday, June 18, 2008 2:08 PM
To: Joel Friedman; 'Edward Peschko'; [email protected]
Subject: RE: shared components in 'compiled' executables.

Hi Joel,

Excluding perl510.dll is no longer necessary in PDK 7.  It may provide a 
performance benefit if you don't use --dyndll, but with dynamic DLL loading 
using a bundled shared perl510.dll should not have any noticeable disadvantage.

However, if you include perl510.dll separately, then using '.' as the runlib is 
bad practice: if you add your application directory to the PATH, and you also 
have a local Perl installation on the PATH, then you may break either your 
application, or the Perl installation if they are not of the same version, 
depending on which directory is listed first in the PATH. You avoid this issue 
by using a separate runlib directory.

Cheers,
-Jan

PS: This discussion should really be moved to the PDK mailing list.

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Joel Friedman
Sent: June 18, 2008 10:54 AM
To: 'Edward Peschko'; [email protected]
Subject: RE: shared components in 'compiled' executables.

Ed,

That option is directly supported by perlapp / pertray (see the User Guide).

What I do is compile all my common modules and the perl10.dll inside of a 
single (or many) dll file(s) in one project .  On the 'Options 2' tab ensure 
that you select 'Only share with my own executables (those generated with this 
PDK license)' or 'Share with anybody'.

Then in another project I add that dll to the 'Module Search Path' and ensure 
to 'Exclude perl510.dll from executable' on the 'Size' tab.  Finally on the 
'Options 1' tab ensure to select 'Use run library' and give a relative path to 
where your application can find the required dll(s).  I simply use "." to look 
in the local directory.

--Joel

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Edward Peschko
Sent: Wednesday, June 18, 2008 1:41 PM
To: [email protected]
Subject: shared components in 'compiled' executables.

hey all,

I've been using perlapp/perltray/etc. to 'compile' executables, and was 
wondering whether the following was possible:

I would like to be able to share components between executables of the same 
overarching 'application'. As it stands right now, I have several apps that are 
all related together, and hence could reuse each others' components. But since 
they are all compiled separately, they all bundle (repeatedly) the same perl 
executable, shared libraries, etc.

How do you make it so that each library in one app is viewable/usable by the 
others, and hence does not need to be archived separately?

Thanks much,

Ed

________________________________
This message may contain confidential or privileged information. If you are not 
the intended recipient, please advise us immediately and delete this message. 
See http://www.datapipe.com/emaildisclaimer.aspx for further information on 
confidentiality and the risks of non-secure electronic communication. If you 
cannot access these links, please notify us by reply message and we will send 
the contents to you.

________________________________
This message may contain confidential or privileged information. If you are not 
the intended recipient, please advise us immediately and delete this message. 
See http://www.datapipe.com/emaildisclaimer.aspx for further information on 
confidentiality and the risks of non-secure electronic communication. If you 
cannot access these links, please notify us by reply message and we will send 
the contents to you.
_______________________________________________
ActivePerl mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to