I still believe that a comprehensive repository of Perl core error messages would be great.

Its called perldiag.

it doesn't say which object it cannot locate.

Um, the one for module X :D

C:\> perl -e"package Foo; use base qw! DynaLoader !; bootstrap Foo;" Can't locate loadable object for module Foo in @INC (@INC contains: C: +/perl/5.10.1/lib/MSWin32-x86-multi-thread C:/perl/5.10.1/lib C:/perl/ +site/5.10.1/lib/MSWin32-x86-multi-thread C:/perl/site/5.10.1/lib .) a +t C:/perl/5.10.1/lib/MSWin32-x86-multi-thread/DynaLoader.pm line 103 DynaLoader::croak('Can\'t locate loadable object for module Fo +o in @INC (@INC co...') called at C:/perl/5.10.1/lib/MSWin32-x86-mult +i-thread/DynaLoader.pm line 170 DynaLoader::bootstrap('Foo') called at -e line 1
Technically its looking for "Foo$Config{dlext}", so maybe the error message should actually spell that out?

2. perldiag doesn't mention this error.

Yes it does

C:\>perldoc perldiag |grep -C2 "loadable object" the file, say, by doing "make install". Can't locate loadable object for module %s in @INC (F) The module you loaded is trying to load an external librar +y, like for example, "foo.so" or "bar.dll", but the DynaLoader mo +dule

3. splain is misleading at best, and arguably wrong:

Hmm, looks incomplete, I think you found a bug, you should report it

C:\>cat 2 Can't locate loadable object for module Foo in @INC (@INC contains: C: +/perl/5.10.1/lib/MSWin32-x86-multi-thread C:/perl/5.10.1/lib C:/perl/ +site/5.10.1/lib/MSWin32-x86-multi-thread C:/perl/site/5.10.1/lib .) a +t -e line 1 C:\>splain 2 Can't locate loadable object for module Foo in @INC (@INC contains: C:/perl/5.10.1/lib/MSWin32-x86-multi-thread C:/perl/5.10.1/lib + C:/perl/site/5.10.1/lib/MSWin32-x86-multi-thread C:/perl/site/5.10.1/lib .) at -e line 1 (#1) Can't locate loadable object for module Foo in @INC (@INC contains: C: +/perl/5.10.1/lib/MSWin32-x86-multi-thread C:/perl/5.10.1/lib C:/perl/ +site/5.10.1/lib/MSWin32-x86-multi-thread C:/perl/site/5.10.1/lib .) a +t -e line 1 C:\>cat 2 Can't locate loadable object for module Foo in @INC C:\>splain 2 Can't locate loadable object for module Foo in @INC (#1) (F) The module you loaded is trying to load an external library, l +ike for example, foo.so or bar.dll, but the DynaLoader module was unable to locate this library. See DynaLoader.

In reply to Re^3: Can't locate loadable object for module X in @INC (@INC contains: ... ) by Anonymous Monk
in thread Can't locate loadable object for module X in @INC (@INC contains: ... ) by arthurg

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.