MySQL Forums
Forum List  »  Perl

DBD::mysql compiled OK, but "make test" fails -- 32 vs 64 bit issue
Posted by: Peter Levine
Date: September 10, 2010 04:11PM

Solaris 10 on sparc hardware. MySQL is 5.1.48, a 64 bit package from mysql.com. I compiled perl 5.12.1 from source. I then compiled all perl modules for Bugzilla/MySQL without problem, except for DBD::mysql.

I had to edit my Makefile to get DBD::mysql (4.014) to compile. Initially it failed trying to link dbdimp.o, a 64 bit file, to a 32 bit file. It told me that dbdimp.o was the "wrong ELF class: ELFCLASS64". I had to add -m64 to LDFLAGS in the Makefile and compile again. That showed the 32 bit file which was the real problem. The file was values-Xa.o. The system has a 32 bit and a 64 bit version. I then had to edit the Makefile and insert the directory with the 64 bit file in LD_RUN_PATH. Then it compiled successfully.

But now "make test" fails. It can't load DBD::mysql because it says "<path>/mysql.so: wrong ELF class: ELFCLASS64". I'm guessing that once again the real problem is not the 64 bit file, but rather the 32 bit file that the linker is trying to link. I know it's not values-Xa.o, because I replaced the 32 bit with the 64 bit and that didn't fix the error. Does anyone know what the 32 bit file is? If I knew that, I'd have a fighting chance at fixing this. Or does anyone know how to force "make test" to reveal what the 32 bit file is, similar to how I forced the Makefile to reveal the 32 bit file?

Options: ReplyQuote


Subject
Written By
Posted
DBD::mysql compiled OK, but "make test" fails -- 32 vs 64 bit issue
September 10, 2010 04:11PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.