|Perl: the Markov chain saw|
Interfacing 64-bit Perl with 32-bit MySQL from sunfreeware.com on Solarisby bigmacbear (Monk)
|on Jun 01, 2007 at 01:16 UTC||Need Help??|
bigmacbear has asked for the wisdom of the Perl Monks concerning the following question:
Just thought I would post this for the benefit of other monks since I was able to find a solution to my problem already.
I was setting up a web server on a Solaris 10 system using an in-house build of Perl and the MySQL binaries from sunfreeware.com (SMCmysql). It so happens that all the packages on sunfreeware.com are built in 32-bit mode, while our in-house Perl package is built in 64-bit mode. I really did not want to re-compile one or the other, although it looks at first like that is the only way around this problem.
My first crack at a solution was to uninstall SMCmysql and install instead the 64-bit binaries from MySQL AB's "community server" download site. With some foresight, I downloaded the same version from both sites (5.0.27). It seemed to work like a champ, although I did have to re-build the Makefile and get rid of the Sun-specific compiler and linker flags (more on this below).
Some weeks or months later, I needed to install PHP on the box, and the simplest solution for that was to install the sunfreeware.com PHP package. Of course, I then had to re-install SMCmysql, which broke the DBD::mysql module I'd so carefully built -- or so I thought. (Actually, in hindsight, that should have continued to work just fine if I'd left it alone, but the next time I tried to rebuild DBD::mysql it did in fact break.)
So I hit Google, and found the answer to making 64-bit Perl, sunfreeware.com's MySQL and DBD:mysql work and play together without re-compiling any packages other than DBD::mysql itself. Here's how:
Hope this helps.