Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Hi monks, I try to install Text::ExtractWords module. But it shows error, I cann't understand the error and also how to rectify this error?.

D:\Text-ExtractWords-0.08.tar\Text-ExtractWords-0.08>perl makefile.pl Writing Makefile for Text::ExtractWords D:\Text-ExtractWords-0.08.tar\Text-ExtractWords-0.08>nmake Microsoft (R) Program Maintenance-Dienstprogramm: Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. Alle Rechte vorbehalten. cl -c -nologo -Gf -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSO +LE -DNO_ST RICT -DHAVE_DES_FCRYPT -DBUILT_BY_ACTIVESTATE -DNO_HASH_SEED -DUSE_SIT +ECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCR +T_READFIX -MD -Zi -DNDEBUG -O1 -DVERSION=\"0.08\" -DXS_VERSION=\"0.08\" "-I +C:\Perl\li b\CORE" ExtractWords.c 'cl' is not recognized as an internal or external command, operable program or batch file. NMAKE : fatal error U1077: 'cl' : Rueckgabe-Code '0x1' Stop. D:\Text-ExtractWords-0.08.tar\Text-ExtractWords-0.08>nmake test Microsoft (R) Program Maintenance-Dienstprogramm: Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. Alle Rechte vorbehalten. cl -c -nologo -Gf -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSO +LE -DNO_ST RICT -DHAVE_DES_FCRYPT -DBUILT_BY_ACTIVESTATE -DNO_HASH_SEED -DUSE_SIT +ECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCR +T_READFIX -MD -Zi -DNDEBUG -O1 -DVERSION=\"0.08\" -DXS_VERSION=\"0.08\" "-I +C:\Perl\li b\CORE" ExtractWords.c 'cl' is not recognized as an internal or external command, operable program or batch file. NMAKE : fatal error U1077: 'cl' : Rueckgabe-Code '0x1' Stop. D:\Text-ExtractWords-0.08.tar\Text-ExtractWords-0.08>nmake install Microsoft (R) Program Maintenance-Dienstprogramm: Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. Alle Rechte vorbehalten. cl -c -nologo -Gf -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSO +LE -DNO_ST RICT -DHAVE_DES_FCRYPT -DBUILT_BY_ACTIVESTATE -DNO_HASH_SEED -DUSE_SIT +ECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCR +T_READFIX -MD -Zi -DNDEBUG -O1 -DVERSION=\"0.08\" -DXS_VERSION=\"0.08\" "-I +C:\Perl\li b\CORE" ExtractWords.c 'cl' is not recognized as an internal or external command, operable program or batch file. NMAKE : fatal error U1077: 'cl' : Rueckgabe-Code '0x1' Stop.

Not only for this module. These type of error shows in some other modules also. Suggest me how to rectify the error?

Help me. Thanks in advance.

Replies are listed 'Best First'.
Re: Text::ExtractWords Installation Error
by wfsp (Abbot) on Apr 01, 2006 at 09:37 UTC
    With regards Text::ExtractWords in particular, ActiveState have a ppd for it so you can install it using ppm. This avoids the need to have a compiler. See holli's excellent A guide to installing modules for Win32

    You may want to look here and here for snags I had with Text::ExtractWords.

    Hope that helps.

    update:

    Fixed second link (pointed to wrong node)

      I have some question based on these answers, help me

      My system is not having direct connection to internet. How to install Camelpack?

      Which one is best Vanilla or Camelpack? Already i am having Perl 5.8.7. Whether these perl setups reintall the perl or update?

      I have download gcc-DW2-core-3.4.5-20060117-1.tar from MinGW but i don't know how to install or configure it?

      Thanks for quick reply monks.

        Installing MinGW can be very daunting, I agree. However, if you just download and run the package with "MinGW" in the name, it'll download the necessary components for you. I've read that you best avoid the version 4, so either get 3 or 5. For example, select MinGW-5.0.2.exe from here.

        I do recommend getting MSYS from the same location (not the developer toolkit). And if you plan on building some Win32 specific modules, such as Win32::GuiTest, you'll need to install the w32-api package too. Otherwise, as marto can testify, you'll get linker errors.

        Oh yeah, you asked about Camelpack too. You can just get it from here — like with MinGW, it's a downloader/installer too. It's easy if you don't mind it reinstalling ActivePerl and having a (for you) useless C++ IDE, thus, it uses quite a bit of disk space.

Re: Text::ExtractWords Installation Error
by Corion (Patriarch) on Apr 01, 2006 at 09:26 UTC

    You need to install the MSVC C compiler that was used to compile your Perl, and have it available in the path.

    Note that you cannot use "any" C compiler without some fiddling. I recommend using the exact version that was used to compile your Perl executable, that is likely MSVC 6. There are two complete packages of Perl with C compilers for Windows, http://stennie.org/camelpack/ and Vanilla Perl - uninstalling your current Perl installation and installing one of these two might also be a solution to your problem.

      Nah, just install MinGW and a recent version of ActivePerl, and you can build XS modules just with the CPAN shell.

      Activestate's recent work on CPAN has made Camelpack and related distributions almost obsolete... Too bad they needed to be pushed into it, first. Or, so it would seem.