Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: install fails for Inline::C (hide errors)

by tye (Cardinal)
on Mar 13, 2013 at 05:41 UTC ( #1023110=note: print w/ replies, xml ) Need Help??


in reply to install fails for Inline::C

It is quite sad that the test harness actively hides the actual error message and replaces it with a bunch of details that are usually rather useless (and, IME, often actually incorrect).

If you learn how to do the rather simple steps to install a module without using all of the automation, then it becomes trivial to run t/01syntax.t directly so you can see the error message.

It looks like CPAN.pm is running App::Prove for you so you might be able to read enough documentation in order to figure out how to tell Prove to just show you all of the test results instead of summarizing them (badly) or some other way to get at the error message.

Maybe ExtUtils::Command::MM even documents its test_harness method.

Without the real error message, everybody is reduced to rather wild guessing just based on the fact that all of the tests are failing. So something is likely going wrong with just trying to load the module. Somebody who has seen a similar-looking failure can guess that something that they did might also work for you.

But I'd certainly go find the real error. Doing that is how one learns to diagnose problems which can be a very valuable skill to build, IME.

- tye        


Comment on Re: install fails for Inline::C (hide errors)
Download Code
Re^2: install fails for Inline::C (hide errors)
by Anonymous Monk on Mar 14, 2013 at 03:36 UTC

    If you learn how to do the rather simple steps to install a module without using all of the automation, then it becomes trivial to run t/01syntax.t directly so you can see the error message.

    When you say "without all of the automation", do you mean install modules manually without using CPAN at all? If I do that, will I ever be able to update manually-installed modules with CPAN in the future, or will I be forced to always manually update them?

      CPAN is a network of copies of a computer archive. I usually use CPAN when installing Perl modules. I rarely use CPAN.pm nor its bin/cpan wrapper. "Automation", of course, refers to modules like CPAN.pm (bad name), CPANPLUS (worse name), App::cpanminus, and probably others and their command-line components.

      I'm sure none of these automated wrappers around CPAN are dependent on their own, separate tracking of what they have installed. You can install one module "by hand" (usually via 'make') and another module via cpanminus and then CPANPLUS will see both of them there just fine and be able to tell what version they are and be able to upgrade them or determine that they don't need to be installed or upgraded for some other module that you are installing that depends on them.

      It, of course, gets rather tedious to install a module "by hand" if that module requires the installation of a huge number of other modules. But my experience says that it is usually wise to avoid those types of modules anyway. So it is only very rarely that I have much motivation to try automation.

      But I'm not trying to tell anybody to avoid automation as much as I do. I just encourage you to install some modules by hand.

      - tye        

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (7)
As of 2014-07-29 04:08 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (211 votes), past polls