in reply to Re: Differentiating between local and system modules
in thread Differentiating between local and system modules

Ok, that worked, but now I have another problem. In my code, ./Foo/Config.pm uses Getopt::Long, and POD::Usage, to parse options and spit out the relevant --help stuff. If I call ./myscript.pl --help, it just returns, without dumping the help (I'm using Carp also).

If I call perl ./Foo/Config.pm --help, it works. The tree looks basically like this:

. |-- ./myscript.pl `-- ./Foo |-- ./Foo/Color | `-- ./Foo/Color/Rgb.pm `-- ./Foo/Config.pm

What am I forgetting here?

Replies are listed 'Best First'.
Re: Re: Re: Differentiating between local and system modules
by Anonymous Monk on Jun 01, 2003 at 14:06 UTC
    I think I found part of the problem. I've got Pod::Usage declared in ./Foo/config.pm, and when I run myscript.pl from the parent directory, pod2usage() expects to find the --help output POD data in myscript.pl, and doesn't look in ./Foo/Config.pm at all, where the actual relevant POD data exists.

    How do I get the POD from ./Foo/Config.pm to show up when I call ./myscript.pl --help (which has a use() specified for 'use Foo::Config;' in it)?

      If you read its POD, you'll find mention of the -input option to pod2usage(). That's what you want.

      Makeshifts last the longest.

        That seemed to work, thank you Aristotle.

        Along these lines, is it possible to have a more "detailed" output for these arguments, given a POD in ./Foo/Config.pm? Basically I'd like to have the ability to do: './myscript --help' and get the full help synopsis, but './myscript --help foo' would give me only the specific details on the option 'foo'.

        My POD is already quite lengthy, and has quite a lot of options, but paging through them would certainly suck for the end user, since 20k of POD scrolls past them on their screen when they invoke --help on its own.