Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Perl 5.8 on WIn32 vs perl56.dll, DBI and ODBC

by NetWallah (Canon)
on Jul 01, 2003 at 05:25 UTC ( [id://270410]=perlquestion: print w/replies, xml ) Need Help??

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

Having struggled for almost 2 hours to resolve this issue, I thought I might share what I have learned, and perhaps help other monks who may need to deal with this.

This issue has been discussed in the thread DBI, Windows and Perl56.dll error but I don't think that thread identified the root cause.

The symptom: The simplest DBI open connection causes the popup message box complaining about the missing "perl56.dll", and the open fails. Basically, DBI is broken at this point.

Here is my understanding of the situation. I would welcome wiser meditations by monks with a better understanding of module implementation.
DBI and ODBC guts are implemented in \Perl\site\lib\auto\DBI\DBI.dll and \Perl\site\lib\auto\Win32\ODBC\ODBC.dll.
These dll's have perl<version>.dll hard-coded in them, where <version> is the version of PERL that the DBI and ODBC modules were installed with.

Hence, if you upgraded from perl 5.6 to 5.8, and did not re-install the modules, they would still want to link to the old perl DLL, and fall apart, if the old perl was absent.

Moral of the story - Re-install all modules when you install perl.
Side-story : my ppm no longer works - it complains about no valid targets, although all target settings are legitimate. Hence, I have had to manually re-install modules. Hope this helps the next monk who encounters this.
Cheers

Replies are listed 'Best First'.
Re: Perl 5.8 on WIn32 vs perl56.dll, DBI and ODBC
by crazyinsomniac (Prior) on Jul 01, 2003 at 05:51 UTC
Re: Perl 5.8 on WIn32 vs perl56.dll, DBI and ODBC
by bunnyman (Hermit) on Jul 01, 2003 at 15:39 UTC

    Moral of the story - Re-install all modules when you install perl.

    Re-installing only the binary Perl modules should be good enough.

Re: Perl 5.8 on WIn32 vs perl56.dll, DBI and ODBC
by NetWallah (Canon) on Jul 01, 2003 at 16:19 UTC
    Thanks crazyinsomniac , for the info on the Dll's and the ppm info - however that command did not work :
    G:\Perl\site\lib>ppm genconfig > ppm.xml Unknown or ambiguous command 'genconfig'; type 'help' for commands.
    The ppm.xml file did not exist, so I tried to create it in place. Anyway, there is no "genconfig" command documented in the help.
    Searching Activestate's bug list revealed nothing.
    In case it helps - here are some details of my ppm:
    G:\Perl\site\lib>ppm PPM - Programmer's Package Manager version 3.1. Copyright (c) 2001 ActiveState SRL. All Rights Reserved. Entering interactive shell. Using Term::ReadLine::Stub as readline lib +rary. Type 'help' to get started. ppm:AvtivePerl5> targ desc Describing target 1 (AvtivePerl58): Path: G:\Perl\site\lib\ppm-conf\ppminst.bat Port: 14533 Type: Local ARCHITECTURE: MSWin32-x86-multi-thread-5.8 CPU: x86 LANGUAGE: Perl OSVALUE: MSWin32 OSVERSION: 4,0,0,0 PERLCORE: 5.8.0 TARGET_TYPE: perl VERSION: 3.05 Rebuildhtml: Root: G:\Perl\ Tempdir: ppm:AvtivePerl5> install dbi Error: no suitable installation target found for package dbi.
    I get the same error no matter what I try to install.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://270410]
Approved by allolex
Front-paged by htoug
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (2)
As of 2024-04-16 23:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found