ActivePerl::Config::find_prog #2

前のエントリでは,ActivePerl/ にパッチを当てていたけど,

The problem is that Module::Install adds 'inc/Module/Install' to the @INC in its load_extensions method. On Windows we end up loading here which loads ActivePerl::Config and ActiveState::Path. ActiveState::Path contains this statement:

        use base 'Exporter';

so Perl ends up trying to load ''. Since the Windows file system is case insensitive and Module::Install has added 'inc/Module/Install' to @INC this ends up loading inc/Module/Install/ instead of the base pragma. The result is that ActiveState::Path doesn't inherit from Exporter as it should and the import of find_prog() in ActivePerl::Config fails silently.

と Gisle が言っていて,これが問題だったのかということで ActiveState/ にパッチを当ててみた.

---	Sat Oct 01 01:31:16 2005
+++	Fri Apr 07 10:24:37 2006
@@ -2,9 +2,10 @@
 use strict;
-our $VERSION = '0.02';
+our $VERSION = '0.02_1';
-use base 'Exporter';
+require Exporter;
+our @ISA = qw(Exporter);
 our @EXPORT_OK = qw(path_list find_prog is_abs_path abs_path join_path rel_path unsymlinked realpath);
 use constant IS_WIN32 => $^O eq "MSWin32";

ActivePerl/ を元に戻してもエラーが出ないようになったので,ひとまず解決の流れかな.
ところで,これ結構はまる人いそうな気がするんだけど,検索しても(ただし,Google 日本語検索)1人しか見つけられなかった.こんなパッチ当てておけば,Plaggerも入るかもしれませんよー.