On 21 May 2007 04:48:35 -0700, misoldgit <[EMAIL PROTECTED]> wrote:
It does beg the question though, if I'm using a module such as
Crypt::OpenPGP how do I find out what other modules it needs (i.e. the
modules that are missing and require manual inclusion)?

You might try to run scandeps.pl (from Modules::ScanDeps - which you
should have already installed, otherwise PAR::Packer won't install):

$ scandeps.pl -V your_original_program

That will give you the static dependencies detected by Module::ScanDeps.
If you add the option -x it will also run your program to check which modules
have actually been loaded when it ends.

On the other hand, pack your program using pp yielding, say, foo.exe.
List foo.exe's  content with

$ unzip -l foo.exe

and compare your two lists.

Note that Module::ScanDeps never lists _external_ shared libraries that
your modules are using (it will only list the "glue" shared libraries),
e.g. for DB_File.pm it lists DB_File.so, but not libdb-4.4.so which
the latter links to.

Sorry that there is no magic wand here.
However, Module::ScanDeps already knows about "quirks", ie. stuff
it can't detect by itself, so post your findings so that the list of quirks
can be amended. E.g. a known quirk is: if you use LWP::UserAgent
explicitly, also add URI/URL.pm, URI/http.pm
and also anything found below directories .../LWP/Authen
and ...LWP/Protocol.

Cheers, Roderich

Reply via email to