perlquestion
NetWallah
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.
<p>
This issue has been discussed in the thread <a href='index.pl?node_id=258414'>DBI, Windows and Perl56.dll error</a> but I don't think that thread identified the root cause.
<p> 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.
<readmore>
Here is my understanding of the situation. I would welcome wiser meditations by monks with a better understanding of module implementation. <br>
DBI and ODBC guts are implemented in
<code>\Perl\site\lib\auto\DBI\DBI.dll</code>
and <code>\Perl\site\lib\auto\Win32\ODBC\ODBC.dll</code>.<br>
These dll's have <code>perl<version>.dll</code> hard-coded in them, where <code><version></code> is the version of PERL that the DBI and ODBC modules were installed with.
<p>
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.
<p> Moral of the story - Re-install all modules when you install perl.
<br>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. <br>
Cheers
</readmore>