in reply to Win32 Perl-Critic Setup Question

I had all sorts of problems with this, there is a high probability that you 'accidently' installed a version of Scalar::Util that does not have 'weaken'. Actually I am willing to bet that is the case. The Scalar::Util that ActiveState includes is pre-compiled, if you had been using CPAN to update your modules, there is a good chance that you blew the original version away and replaced it with something that does not have weaken.

The two suggestions I can give you are,

  1. Upgrade your version of Perl, the latest ActivePerl was 5.8.8 (no looking at 5.10 BTW).
  2. Move the Scalar::Util module somewhere and attempt to reinstall the version that's on your system now.

Replies are listed 'Best First'.
Re^2: Win32 Perl-Critic Setup Question
by ddn123456 (Pilgrim) on May 29, 2008 at 17:53 UTC
    Hi Herkum,

    Great to hear this.

    Tomorrow morning first thing at the office (working at home now) I'll try out your suggestion un-&re-installing ActiveState.

    Concerning the upgrade I'm a bit blocked since I have to make IT happen with Perl 5.8.6. Taking into account Ikegami's comment about 5.8.0, 5.8.6 ought to support it.

    FYI. On Perl 5.10 it installs and works fine.

    I'll keep you posted further on.

    Many thanks.
    ddn123456
Re^2: Win32 Perl-Critic Setup Question
by Anonymous Monk on May 30, 2008 at 09:13 UTC
    Hi Herkum,

    After a un-&re-install of ActiveState 5.8.6, installing "Bundle-Perl-Critic" from the ActiveState ppm and then all specific packages it works now.

    Originally I had indeed installed through cpan the "Bundle-Perl-Critic-IncludingOptionalDependencies".

    Re-installing through ActiveState ppm the "Scalars::Util" always got stuck on the XS-part being skipped.

    As of Perl 5.8.8 the MinGW GCC compiler is supported, older versions (such as 5.8.6) still need the Microsoft VC++ compiler (meaning licenses, etcetera).
    There is the tutorial how to achieve this with VC++. I'll test it out soon how to achieve this with VS2005. (The VS2005 is preferable to VS2003 due to VS2003 digital signature restrictions on compiled dll's.)

    Many thanks for sharing your experiences!
    Many thanks to all the other perlmonks who answered!

    Greetings
    ddn123456
      older versions (such as 5.8.6) still need the Microsoft VC++ compiler

      You can use MinGW with older versions of ActivePerl if you install Extutils::FakeConfig and then:
      set perl5opt=-MConfig_m
      This is covered in a little more detail in Compiling C/C++ based Modules under ActiveState using MinGW. I've been using this method with ActivePerl build 806 (perl-5.8.0) with good mileage.

      Cheers,
      Rob
        Hi Rob,

        Great news! Just installed "Extutils::FakeConfig".
        Looks like a great weekend ahead for me :-).

        Thanks a lot.
        Cheers.
        ddn123456