You're mixing 32-bit and 64-bit libraries.

Maybe Ruby is a 32-bit program and mysql.so is a 64-bit shared object.

On 1/15/08, Andrew Ohnstad <andrew.ohnstad / gmail.com> wrote:
> Thomas Hurst wrote:
> > * Andrew Ohnstad (andrew.ohnstad / gmail.com) wrote:
> >
> >> Solaris 10 x86 on a 64-bit Xenon server...  Can anyone guess where this
> >> is going?
> >
> > It's *Xeon*.  Every time you say Xenon an Intel marketing team member
> > kills himself.  Hm.. carry on.
>
> Oops, I mean I meant to do that, I mean oops... }:0
>
>
> > This looks like a Solaris bug:
> >
> >   http://bugs.opensolaris.org/view_bug.do?bug_id=6531439
> >
> > If the workaround described there doesn't work you might try getting the
> > mysql extension tarball and messing about with extconf (maybe
> > --with-mysql-lib=/usr/lib/amd64?  ugh) and/or the Makefile.
> >
> > You might also try strace/dtrace to see where the linker's looking for
> > the library first, in case that workaround is incomplete.
>
> Yuck.
>
> This is a nudge in the right direction.  I was monkeying around with the
> libraries mentioned in the bug report, (originally all of them existed
> in some form, dunno if links or files) and ln'ed when I meant to ls and
> lost track of what I was doing.  Strangely enough, it compiled without a
> hitch immediately thereafter.
>
> Sadly, it still doesn't work...
>
> andrewo@host:~/test# script/console
> Loading development environment.
> >> require 'mysql'
> LoadError: ld.so.1: ruby: fatal:
> /usr/local/lib/ruby/gems/1.8/gems/mysql-2.7/lib/mysql.so: wrong ELF
> class: ELFCLASS64 -
> /usr/local/lib/ruby/gems/1.8/gems/mysql-2.7/lib/mysql.so
>         from /usr/local/lib/ruby/gems/1.8/gems/mysql-2.7/lib/mysql.so
>
>
> I'll keep messing with it.
>
> Thanks for the help.
>
> --
> Posted via http://www.ruby-forum.com/.
>
>


-- 
Gerardo Santana