Working with Perl/Tk on Windows XP and
Build 635 of ActiveState Perl 5.6.1 I came up with a similiar error as shown below:
Tk::JPEG object version 800.023 does not match
Tk::JPEG::XS_VERSION 800.024 at
C:/Perl/lib/DynaLoader.pm line 225.
A search on PerlMonks for info lead me to this node
I have read that this problem has been submitted to
ActiveState with no solution as of yet for Windows. This likely isn't a problem for *nix users since they would compile the module on their own OS, however, it does still
appear to be a nagging little annoyance for Windows users to this date.
Anyway... I figured I would do a little more tinkering so I went into the module itself (JPEG.pm) and came up
with the following rather klugey solution/fix:
(this is line 13 of the module)
#$XS_VERSION = $Tk::VERSION; #old line
$XS_VERSION = 800.023; #new line (now line 14)
Note: On Windows you must release (uncheck in file properties) the READ ONLY lock on this file in order
to properly save your changes.
And sure enough the script with Tk::JPEG worked!
No more errors!
This 1 line 'fix' corrected my error; I would imagine that
it would work similiarly for the problem mentioned in the parent node by setting $XS_VERSION to 800.022 .
One last thought: All this is indeed is just 'a-work-around', and kind of a scratchy one at that. If there are any fellow monks out there who have run across this problem
with Windows Perl/Tk and this particular module and have
a better, 'cleaner' solution I would really like to hear
about it.
Thanks in Advance for Any Thoughts on this Matter! |