"Perl Command Line Interpreter has stopped working" when running PPM.

Posted by stevenchock@decisionresearch.com on 2013-01-14 17:29

Can't get the PPM GUI to run. This is on Win 7 64-bit. Tried reinstalling 5.16.2 64-bit, with the same result. PPM command line seems to work. Just the GUI won't run. Tried 5.16.2 x86 and this launches the GUI fine.

The following is in the event log:
Faulting application name: perl.exe, version:, time stamp: 0x50d17d90
Faulting module name: ole32.dll, version: 6.1.7601.17514, time stamp: 0x4ce7c92c
Exception code: 0xc0000005
Fault offset: 0x0000000000036b3b
Faulting process id: 0x%9
Faulting application start time: 0x%10
Faulting application path: %11
Faulting module path: %12
Report Id: %13

Perl -V shows:
Summary of my perl5 (revision 5 version 16 subversion 2) configuration:

osname=MSWin32, osvers=5.2, archname=MSWin32-x64-multi-thread
hint=recommended, useposix=true, d_sigaction=undef
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=undef, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
cc='cl', ccflags ='-nologo -GF -W3 -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DWI
optimize='-MD -Zi -DNDEBUG -Ox -GL -fp:precise',
ccversion='14.00.40310.41', gccversion='', gccosandvers=''
intsize=4, longsize=4, ptrsize=8, doublesize=8, byteorder=12345678
d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8
ivtype='__int64', ivsize=8, nvtype='double', nvsize=8, Off_t='__int64', lsee
alignbytes=8, prototype=define
Linker and Libraries:
ld='link', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpa
th:"C:\Perl64\lib\CORE" -machine:AMD64'
libs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.l
ib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32
.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib buffero
verflowU.lib msvcrt.lib
perllibs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg
32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws
2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib buf
feroverflowU.lib msvcrt.lib
libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl516.lib
Dynamic Linking:
dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug -opt:ref,icf -l
tcg -libpath:"C:\Perl64\lib\CORE" -machine:AMD64'

Characteristics of this binary (from libperl):
Locally applied patches:
ActivePerl Build 1602 [296513]
Built under MSWin32
Compiled at Dec 19 2012 00:07:06

ActiveState Staff
Thu, 2013-01-17 12:57

Uninstall 1602, then manually remove the entire remaining Perl directory tree.

The uninstaller can't remove anything that isn't on the manifest of the original installer, so the docs will survive, as will any modules you added with PPM. The modules will have binary components that are incompatible with a new Perl.

Make sure you don't have PERL5LIB or PERLLIB set to point at a 32-bit Perl installed somewhere else, then re-install the 64-bit 1602.

activeperl@oner... | Sun, 2013-03-03 20:32

Having the same problem as the poster. Oddly enough, I'm pretty sure this was working when I originally installed 5.16.2 and I updated everything through ppm.

Some time later, I went to run a program, and had it crash, saying it couldn't find perl514.dll -- which I found odd. Thought maybe a package was out of date, and then ppm crashed, as above.

So I uninstalled 5.16, removed the install directory completely, then reinstalled it (per the same advice given above). My separate program now works, but ppm and Perl Critic both still fail, even though command line ppm works fine.

I never had any 32-bit Perl installed on my machine, however.

I checked Event Viewer and perl -V, and they show EXACTLY what the poster has above, to the byte, with the exception of my @INC having "." at the end of it.

activeperl@oner... | Sun, 2013-03-03 21:17

A couple more points to add:

  • As with the original poster, I'm on Win 7 x64.
  • I've had older versions of Perl on here, but have always uninstalled before reinstalling. I don't usually delete the directory, but did this time.
  • I use the .msi installers.

Regarding the last point: if we use the .msi to remove the product, and also remove the directory it was installed to, are there any other artifact files lying around on the system that need to be removed? (C:\ProgramData, for instance?)

activeperl@oner... | Sun, 2013-03-03 21:33

Found the problem, thanks to Sysinternals. Ran Process Monitor, and saw that wperl.exe was accessing the file BoxIconOverlayHandler.dll belonging to the desktop sync program for box.com. I uninstalled the sync client, and now ppm starts up fine.

Not sure why wperl.exe is crashing, or why it's accessing the file, but this should be easy to reproduce in-house now.

stevenchock@dec... | Thu, 2013-04-25 13:58

Great find. Had pretty much given up. I didn't really miss the GUI since everything could be done from the command line.

I had the same problem on my work and home PC so I figured it must be something I always install. I uninstalled Box Sync and now PPM is working.

cjstaab | Tue, 2015-04-21 08:02

Even though this was diagnosed almost 2 years ago it still seems to be a problem with the latest release. Does anyone know if ActiveState has any intention to address this problem?


In response to bug report 106246 ActiveState found and corrected this issue. It is verified in builds and

bobhatfield | Mon, 2014-06-23 13:20

I too ran procexp64 from sysinternals (thanks to above post) and found that a .dll from Dell Backup and Recovery was being accessed. Not needed so I removed the software and all's well!

For lurkers: Start procexp, then run the program that's throwing the exception (PPM in my case). Click on the process in procexp and be sure both of these are set in procexp:

View|Show Lower Pane
View|Lower Pane View|Handles

You'll see a list of "File"s in the lower pane -- look for dll's that don't look like they belong.

fahads | Tue, 2017-01-03 07:28

I am using perl version 5.24.0 and perl command line interpreter has stopped working, i have to install a package and unable to do because the perl package manager/ ppm is not working. Kindly help me in this regard that why i am facing the issue when i have latest perl version installed already.

P.s i have installed perl for my bugzilla setup, i had successfully completed the bugzilla setup but now just need to install an additional plug in for its integration with testlink. Kindly help!!

ActiveState Staff
Thu, 2017-01-05 10:39

I removed my previous comment about the repo because it was incorrect.

Please read the thread above, but it sounds like your install might have a dll conflict. Please read the above posts on how user "activeperl" troubleshot his problem.

Please confirm but I suspect that either you have 2 or more perls installed on your system, or some other program overwrote a dll that perl needed. The best way to rectify would be to uninstall ActivePerl, delete the contents of C:/Perl or C:/Perl64, and re-install again.