ActivePerl discussion

Perl and ActivePerl usage questions; Perl practices and programming questions; Perl questions that don't fit other categories

Perl CVE-2013-1667 Input Rehashing Denial of Service Vulnerability

Does this apply to active perl I know that it applies to the more generic version of Perl 5.14.x. Will ActiveState release a product specific patch to address this issue?

ActivePerl 5.24.1 32bit ExtUtils::CBuilder link fails on trivial XS; returns non-existent file

Key problem this code:

my $lib = $cb->link(
objects => [$obj],
module_name => 'Foo',
extra_linker_flags => [],

Returns Foo.dll, but not Foo.dll is generated. Key diagnostic appears to be:

n:/lang/perl/active~1/x86/v524~1.1/site/lib/auto/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.6.3/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible N:\lang\perl\activestate\x86\v5.24.1\lib\CORE/libperl524.a when searching for -lperl524

Expected behavior:

Perl Disable PMC


I am concerned about performance in our Perl applications. I see perl is probing a lot of pmc files that don't exist, which is causing for performance degradations (about 1.5 million probes on a small run). Is there any way we can disable the probes for the PMC files, or get a version of Activestate perl which has the option to disable them?


Windows Server 2012/Business Edition and need X12-Parser module

We are moving from a Windows server 2008 with perl v5.16.3 to Windows server 2012R2 with Business Edition perl v5.24.1. On the old machine we had a perl module called X12-Parser. I am now trying to install that module on the new machine. It fails and says it can't find any package that provides X12-Parser. It does exist but evidently only compatible with perl v5.10. Does anyone know if there is a replacement module, or how I can install this module so we can have our scripts run on the new server?

Any help is appreciated.

load_file:%1 is not a valid Win32 application

I get the following error,

Can't load 'C:\Program Files (x86)\Rational\TestRealTime/lib/perl/auto/TestRTUtil/TestRTUtil.dll' for module TestRTUtil: load_file:%1 is not a valid Win32 application at C:/Perl64/lib/ line 227.
at C:\Program Files (x86)\Rational\TestRealTime/lib/scripts// line
Compilation failed in require at C:\Program Files (x86)\Rational\TestRealTime/li
b/scripts// line 25.
BEGIN failed--compilation aborted at C:\Program Files (x86)\Rational\TestRealTim
e/lib/scripts// line 25.

Perl 5.24.2402 Event.dll requires missing DLL Perl522.dll

Hi all-

When I installed the latest 64-bit distribution of ActivePerl 5.24.2402, I got the following errors when trying to run a simple Tk gui.

You can replicate this via a simple Perl script that calls 'use Tk;'.

The error message is in two parts:

(1) GUI dialog from Windows indicating missing Perl522.dll
(2) Console message: Can't load 'C:/Program Files/Perl64/site/lib/auto/Tk/Event/Event.dll' for module Tk::Event:: load_file: The specified module could not be found ...

win32::odbc hasn't closed db connection since build 1604

I've been having an issue for several years now with win32:odbc.

After opening a connection to an Access database, issuing the $db->Close(); command leaves the .ldb file behind.

Code Sample:


my $db;
my $count = 0;

while (!defined($keypress=ReadKey(-1)))
$db=new Win32::ODBC($DSN) or die "couldn't ODBC $DSN because ", Win32::ODBC::Error(), "\n";
print "Open - Close Count = $count\n";


Using Perl 5.16, Win32::DirSize does not work.

What do I use to get the number of files and directories in an upper directory. Win32::DirSize no longer works with 5.16 Perl.

can no longer store a database handle in an environment variable

After installing ActivePerl 5.24.0, we can no longer store a database handle in an environment variable.

We get the following error when trying to prepare a sql statement:

Can't locate object method "prepare" via package

The scripts works when I change the database handle from an environment variable to a local variable.

Is there an easy fix for this or do I have to change all of our code to use local variables to store a database handle?

Permission denied


I've installed ActivePerl 32 bits version.
perl -v
gives the right answer.

When I want to run a script, I get a "permission denied" message each time I want to open a file.

I tried the following code :

open (OUT1,">out1.txt") or die "Cannot: $!";
print OUT1 "testing\n";
close (OUT1);

and then ran it in cmd window (Administrator or not, it does not change anything) :
Cannot: Permission denied at line 1.