hesco has asked for the wisdom of the Perl Monks concerning the following question:

I'm experimenting now with CGI::Builder framework.

Even though

hesco@marcus2:~$ ls /home/hesco/sandbox/DistroPrsRls/lib/DistroPrsRls_ +cbf.pm -alht -rwxr-xr-x 1 hesco hesco 48K 2006-02-12 08:44 /home/hesco/sandbox/Dist +roPrsRls/lib/DistroPrsRls_cbf.pm
But when I run perl -wc on the script seeking this module, I still get an error reading:
Can't locate DistroPrsRls_cbf.pm in @INC (@INC contains: '/home/hesco/ +sandbox/DistroPrsRls/lib' (etc.)
I'm baffled. Why can't my library be found?

Updated to reflect no change given
inclusion of strict, warnings and diagnostics

The script doing the calling reads:

#!/usr/bin/perl -w use strict; use warnings; use diagnostics; use lib(qw{'/home/hesco/sandbox/DistroPrsRls/lib'}); use DistroPrsRls_cbf; my $dpr = DistroPrsRls_cbf->new(); $dpr->process(); exit;
-- Hugh

Replies are listed 'Best First'.
Re: Baffled by missing library
by brian_d_foy (Abbot) on Feb 12, 2006 at 17:36 UTC

    In your qw{}. you have literal tick marks. Those end up as part of the path name, and the error message fools you because the ticks look like they're there as part of the message.

    --
    brian d foy <brian@stonehenge.com>
    Subscribe to The Perl Review
      Thank you sir. That got me moving again. Perhaps this is too early on a Sunday morning to be learning new modules? I don't know. Thanks again.

      -- Hugh

Re: Baffled by missing library
by john_oshea (Priest) on Feb 12, 2006 at 17:40 UTC

    The line

    use lib(qw{'/home/hesco/sandbox/DistroPrsRls/lib'});

    is quoting your lib path twice - once via the 'qw' and once via the single-quotes - you need one or the other, but not both.