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

I ran into the following error when trying to update HTML::Parser using ActiveState 5.6.0's PPM:

PPM> verify An upgrade to package 'HTML-Parser' is available. PPM> install HTML::Parser Install package 'HTML-Parser?' (y/N): y Retrieving package 'HTML-Parser'... Error installing package 'HTML-Parser': Cannot forceunlink C:\perl\site\lib\auto\HTML\Parser\Parser.dll: Permission denied at C:/perl/lib/File/Find.pm line 499

How should I proceed? Should I simply delete the C:\perl\site\lib\auto\HTML\Parser\ directory or is there something less heavy-handed I can do to resolve this?

I did try to do my homework before posting, but was unabled to find anything relevant. Please help.

Replies are listed 'Best First'.
(tye)Re: Problems Updating HTML::Parser
by tye (Sage) on Mar 01, 2002 at 18:45 UTC

    PPM uses HTML::Parser which causes it to load Parser.dll which prevents you from removing it. It looks like PPM tries to deal with upgrading modules that it uses, but it probably can't deal with such modules including a *.dll. FYI, my copy of HTML::Parser doesn't include a *.dll, but perhaps that is because it is extra old.

    So PPM probably needs to be updated to fix this problem now that one of the modules it uses includes a *.dll.

    The "easiest" way I can think to work around this would be to copy the "site" directory tree somewhere, then use "perl -IcopyOfSite -S ppm" to launch ppm but have it use the copy rather than the original. I'd hope that it would still install to the regular place and so would find Parser.dll not in use. Then delete copyOfSite when done.

            - tye (but my friends call me "Tye")

      does it use HTML::Parser ? It definitely uses *XML::Parser* for sure, but I would think that the likely explanation is that some other process is using HTML::Parser.

      HTML::Parser has had an XS component and hence a Parser.dll since version 3.0 BTW

      /J\

        Both XML-Parser and HTML-Parser are included in the list of modules that PPM uses (search for "PPMPRECIOUS" in ppm.bat). I didn't search any further to see what part of PPM uses HTML::Parser nor how/why. Feel free to.

                - tye (but my friends call me "Tye")
(podmaster: ppm3) Re: Problems Updating HTML::Parser
by PodMaster (Abbot) on Mar 01, 2002 at 20:05 UTC
    Did you try ppm3? Do you have ppm3? I suggest you upgrade ppm to ppm3 and try again and then report here.

    update: there is a similar issue with Indigoperl and updating Compress::Zlib, according to (crazyinsomniac) Re: IndigoPerl 5.6 for Win32.
     

    Look ma', I'm on CPAN.


    ** The Third rule of perl club is a statement of fact: pod is sexy.