Indeed the topic has been discussed elsewhere, but please note that there has been no resolution there either. I am seeking advice on how to correct the problem.
The code worked fine on server #1. Move the code to server#2 and it does not work. Server #2 was set up by tech support with Perl installed. Server #2 has Control Panel access, where various modules of Perl can be installed. I installed the DBD::mysql modules via the Control Panel. If this error is suggesting that there is some incompatibility between the installed version of Perl and the install DBD::mysql module, I would like to know. I can talk to tech support about this. Right now, their position is that my code is at fault.
If there is a way to install a compatible version of DBD::mysql, then I need some guidance on how to do this.
Pete
| [reply] |
| [reply] |
If this error is suggesting that there is some incompatibility between the installed version of Perl and the install DBD::mysql module, I would like to know. I can talk to tech support about this.
Yes, the error message is telling you that the installed DBD::mysql module is incompatible with the installed Perl.
The shared library, DBD/mysql/mysql.so was not built with the same compile options as the Perl executable running your program.
FYI, DBD/mysql/mysql.so is an extension to Perl that allows Perl that enables Perl to use the MySQL client library. Many applications use extensions or plug-ins. In all cases, the extension/plug-in must be compiled properly to be usable with the application. Perl is no different.
I am thinking that your new hosting provider installed DBD::mysql using a different Perl (probably the "system Perl") than the one they allow to run user programs. Likely the control panel you used to "install" DBD::mysql actually just created a symbolic link to the already installed DBD::mysql, resulting in the compatibility issue.
| [reply] |
If there is a way to install a compatible version of DBD::mysql, then I need some guidance on how to do this.
Maybe, but will be tricky. If the new hosting service can't or won't resolve the incompatibility, you should consider a different hosting service
Since it sounds like you have no way to directly run the CPAN tool in your virtual host, you will need to duplicate the Perl installation on your own machine.
Also, you will need to be able to upload not only your Perl programs, but compiled library files as well. And you will need to be able to create the required subdirectories so that Perl can find the files.
Config can be used in a Perl program you run in the virtual host to tell you about the Perl installation.
Using that information, duplicate as best as possible that Perl installation on your own machine. Then you can install DBD::mysql on that. Then you can upload the installed pm and so files to the virtual server.
| [reply] |