Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: disable functions if module not installed

by kyle (Abbot)
on Nov 03, 2008 at 21:47 UTC ( [id://721209]=note: print w/replies, xml ) Need Help??


in reply to disable functions if module not installed

The second one gives you "error 500" because you left out the second quotation mark for the string eval. Also, I'm guessing you're doing this on a web server since Perl itself doesn't sprout error 500. If it's under mod_perl, I wonder if there is a scoping problem. Do you use strict and warnings?

  • Comment on Re: disable functions if module not installed

Replies are listed 'Best First'.
Re^2: disable functions if module not installed
by lepetitalbert (Abbot) on Nov 03, 2008 at 22:28 UTC

    Hi kyle and chromatic,

    yes, on a web server, the quotation mark is a typo in the post and yes I use strict and warnings.

    while trying to write a minimal code it appears that even this doesn't work

    #!/usr/bin/perl -w use strict; use warnings; use diagnostics; my $is_Magick = 0; eval "require Image::Magick"; if ($@) { # problems with GD, fall back to non-GD } else { # we have GD, go for it! $is_Magick = 1; } print "Content-type: text/html; charset=ISO-8859-1\n\n"; print $is_Magick;

    without IM it prints 0, with IM, well :

    [Mon Nov 03 23:21:35 2008] [error] [client 127.0.0.1] Deep recursion o +n subroutine "Image::Magick::AUTOLOAD" at\r [Mon Nov 03 23:21:35 2008] [error] [client 127.0.0.1] \tC:/usr/site/li +b/Image/Magick.pm line 42 (#1)\r [Mon Nov 03 23:21:35 2008] [error] [client 127.0.0.1] (W recursion +) This subroutine has called itself (directly or indirectly)\r [Mon Nov 03 23:21:35 2008] [error] [client 127.0.0.1] 100 times mo +re than it has returned. This probably indicates an\r [Mon Nov 03 23:21:35 2008] [error] [client 127.0.0.1] infinite rec +ursion, unless you're writing strange benchmark programs, in\r [Mon Nov 03 23:21:35 2008] [error] [client 127.0.0.1] which case i +t indicates something else.\r [Mon Nov 03 23:21:35 2008] [error] [client 127.0.0.1] \r [Mon Nov 03 23:21:35 2008] [error] [client 127.0.0.1] Out of memory!

    Thanks.

    "There is only one good, namely knowledge, and only one evil, namely ignorance." Socrates

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (5)
As of 2024-04-25 14:40 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found