2
votes

I was attempting a switch from ActivePerl 5.12.2 (64 bit) to Strawberry Perl 5.18.2.2 (64 bit). All this on a Windows 7 Home Premium SP1 64 bit. The sequence I went through is as follows:

1) Installed Strawberry Perl side by side with the old ActivePerl. (I did a similar thing on another box, only it was ActivePerl 5.14.2 without any problem.) Rearranged the %path% to have Strawberry Perl first. Perl crashed consistently and frequently. I was only able to run "Perl -v" without it crashing.

2) Following web search results, I uninstalled ActivePerl, uninstalled Strawberry Perl and deleted all related directories.

3) I then reinstalled afresh Strawberry Perl. Now I got an error: "The program can't start because perl512.dll is missing from your computer." Again consistently, except when running "Perl -v".

4) I searched the registry and found only a few pointers to some ActivePerl (now deleted) directories. No reference to perl512.dll was found. I deleted the ActivePerl directory pointers. This didn't help.

Searching this site and the web in general only yields the advice to uninstall every old Perl installation before installing the new.

Please help...

1
After you uninstall & delete the directories, is there still a perl.exe somewhere else in your path? - tjd
Yes: C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin - MeirG
You are probably using a module that was installed with your old Perl. - ikegami
Dear @ikegami, you are absolutely right! The culprit was a directory pointed to by the environmental constant PERL5LIB. There I found a tremendous amount of libraries that I never conscientiously put there, and I have no idea how all these got there. (Does ActiveState, CPAN or CPANM install modules there?) Renaming that directory solved the problem! Thank you all for your help! Meir - MeirG
You probably used local::lib, which is kinda silly on a Windows machine (ignoring the problems you've just experienced from using INSTALL_BASE instead of PREFIX+LIB). - ikegami

1 Answers

0
votes

Just so this question doesn't appear unanswered - check the environment variables, such as PERL5LIB. They can still point to old libraries even after an uninstall.