http://www.perlmonks.org?node_id=998977

Generoso has asked for the wisdom of the Perl Monks concerning the following question:

Dear monks I am trying to run an example on SimpleXLSX with ActiveState perl 5.0.16 and I get an error message that it can not fin perl512.dll.

My guess is that it sholud be using perl516.dll, why am I getting this error?

#!/usr/bin/perl -w use strict; use SimpleXLSX; my $parser = SimpleXLSX->new(); my $workbook = $parser->parse('Book1.xls'); if ( !defined $workbook ) { die $parser->error(), ".\n"; } for my $worksheet ( $workbook->worksheets() ) { my ( $row_min, $row_max ) = $worksheet->row_range(); my ( $col_min, $col_max ) = $worksheet->col_range(); for my $row ( $row_min .. $row_max ) { for my $col ( $col_min .. $col_max ) { my $cell = $worksheet->get_cell( $row, $col ); next unless $cell; print "Row, Col = ($row, $col)\n"; print "Value = ", $cell->value(), "\n"; print "Unformatted = ", $cell->unformatted(), "\n"; print "\n"; } } }

Result:

Process started >>> Can't load 'C:/Perl/site/lib/auto/Data/Dumper/Dumper.dll' for module D +ata::Dumper: load_file:The specified module could not be found at C:/ +Perl/site/lib/XSLoader.pm line 68. at C:/Perl/site/lib/Data/Dumper.pm line 36. Compilation failed in require at C:/Perl/site/lib/SimpleXLSX.pm line 8 +. BEGIN failed--compilation aborted at C:/Perl/site/lib/SimpleXLSX.pm li +ne 8. Compilation failed in require at F:\perl_TK\perldb\perl1excelRead3.pl +line 4. BEGIN failed--compilation aborted at F:\perl_TK\perldb\perl1excelRead3 +.pl line 4. <<< Process finished. ================ READY ================

Replies are listed 'Best First'.
Re: ActiveState perl512.dll error
by choroba (Cardinal) on Oct 14, 2012 at 21:32 UTC
    Some of your libraries come from perl 5.12 (probably a previous installed version of Perl?). Remove them and install the appropriate versions compatible with your current Perl.
    لսႽ† ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ

      The error message says the perl512.dll not found. Not that is there and it can not use it.

        The error message says the perl512.dll not found. Not that is there and it can not use it.

        I think you'll find that it's pretty much as choroba has said. If your Data/Dumper is from a perl-5.12 installation, then Dumper.dll won't load unless it finds perl512.dll.

        If it can't find perl512.dll then you'll get the error message that you posted in the transcript in your first post, and you'll probably also get a pop-up that tells you that perl512.dll could not be found.

        Re-installing Data-Dumper might fix the immediate problem, but if there's one module hanging around from a previous perl installation, then there's probably others.

        Cheers,
        Rob
        I met exactly the same error recently. It is possible that the reason is different in your case, but this was mine: A new version of Perl was installed, but the previous version of Perl was not uninstalled properly. When Perl was looking for its modules, it sometimes found them in the old Perl directories and tried to use them. Some of them triggered the error.
        لսႽ† ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ
Re: ActiveState perl512.dll error
by bulk88 (Priest) on Oct 15, 2012 at 00:31 UTC
    I suggest uninstalling ActivePerl, then deleting the C:/Perl folder, then installing your new ActivePerl. More specifically, you could delete C:/Perl/site, or more specifically C:/Perl/site/auto (which will wipe all the XS DLLs but not PM files).
Re: ActiveState perl512.dll error
by Generoso (Prior) on Oct 15, 2012 at 02:28 UTC

    With an update for the data dumper pm to version 2.136 the error is gone. Thank you.