[Catalyst] Bareword "catalyst" not allowed while "strict subs" in use at Makefile.PL line 90.

Tomas Doran bobtfish at bobtfish.net
Mon May 3 18:16:06 GMT 2010

On 3 May 2010, at 12:57, Octavian Rasnita wrote:

> Hi,
> I am trying to install a Catalyst-based app under Debian which has  
> Perl 5.10.0 installed.
> I've installed the latest versions of CPAN, CPANPLUS,  
> ExtUtils::MakeMaker, Module::Install, Module::Build and local::lib  
> using cpan.
> Then I tried to run perl Makefile.PL because I was hoping that it  
> will show me the missing Perl modules:
> ebroker:/srv/BRK1# perl Makefile.PL
> include /srv/BRK1/inc/Module/Install.pm
> Bareword "catalyst" not allowed while "strict subs" in use at  
> Makefile.PL line 90.
> Execution of Makefile.PL aborted due to compilation errors.
> ebroker:/srv/BRK1#
> In the line 90 appears the line:
> catalyst;
> I have also tried to change it to:
> catalyst();
> but then it gives the error:
> "tests_recursive will not work if tests are already defined at /usr/ 
> local/share/perl/5.10.0/Module/Install/Makefile.pm line 189."
> Catalyst::Runtime is not installed because I was hoping that doing  
> `perl Makefile.PL` would display all the missing modules, including  
> Catalyst::Runtime, because it is listed in Makefile.PL. Is there  
> another requirement for using this command?

Whatever distribution this is is broken if you're installing the  
application from a .tar.gz file.

Module::Install::Catalyst (which provides the 'catalyst;' function)  
should be already bundled in the inc/ directory, and everything  
should work..

Alternatively - if you're checking the application out of revision  
control (i.e. there is no inc/ directory in the distribution) then  
you need Catalyst::Devel installed as you are running in 'author'  


More information about the Catalyst mailing list