Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: pod2usage question

by tlm (Prior)
on May 06, 2005 at 22:16 UTC ( [id://454830]=note: print w/replies, xml ) Need Help??


in reply to pod2usage question

The problem is that in the BEGIN block your script chdirs to a different directory from where you invoked the script, so, by the time that pod2usage is executed, the value returned by $0 (which pod2usage relies on) no longer points to the script. This is an easy problem to fix, but I don't understand why your script is chdir-ing in the first place.

the lowliest monk

Replies are listed 'Best First'.
Re^2: pod2usage question
by dwhitney (Beadle) on May 06, 2005 at 23:31 UTC
    Well, I've changed by BEGIN block as follows:
    BEGIN { use strict; use warnings; print "I am here!\n"; use Pod::Usage qw( pod2usage ); ### Bomb if there is nothing on the command line ### pod2usage(2) if ( not @ARGV ); print "I am there!\n"; @cmd = fileparse( File::Spec->rel2abs( $0 ), '\.[^.]*' ); $LIBPATH = File::Spec->catdir( $cmd[1], "../lib" ); eval " use lib '$LIBPATH'"; chdir "$LIBPATH"; use Data::Dumper; printf "---ENV---\n%s\n", Dumper( \%ENV ); }
    Now here's the funky part, on a Win32 box, I get the output:
    I am here! Usage: move_data.pl [options] Options: -help..........Brief help message -man...........Full documentation -config........Full path to the configuration file
    Which is what I expected, while on a Linux machine, I only get the I am here!...
    What gives?
      Which is what I expected, while on a Linux machine, I only get the I am here!...
      Odd, works just fine for me. Maybe you should try running it in the debugger. Since the relevant code is in a BEGIN block, you need to put
      BEGIN { $DB::single = 1; ...
      in there to make sure the debugger doesn't just jump over it. Then, call
      $ perl -d move_data.pl
      from the command line and step through the source lines using n and s.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://454830]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others romping around the Monastery: (3)
As of 2024-04-25 16:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found