install mysql-ruby on RHEL

Discussion in 'Ruby' started by Richard Navarrete, Feb 4, 2006.

  1. Howdy,

    I've successfully installed ruby-rails-mysql on my powerbook, on our
    Windows server, but am missing something on our Linux box.

    Ruby is installed (1.8.4), so is rails (0.8.11). And I got the
    "Congratulations, you put Ruby on Rails!" screen. I have MySQL
    already installed (it's been there for a long time), version 4.0.25).

    Now, I need to install the driver for MySQL/Ruby (mysql-ruby-2.7).
    Here's how the progression goes:

    <code>

    [richard@www mysql-ruby-2.7]$ ruby ./extconf.rb --with-mysql-dir=/usr
    checking for mysql_query() in -lmysqlclient... yes
    checking for mysql_ssl_set()... yes
    checking for mysql.h... no
    checking for mysql/mysql.h... yes
    creating Makefile

    [richard@www mysql-ruby-2.7]$ make
    gcc -fPIC -g -O2 -I. -I/usr/local/lib/ruby/1.8/i686-linux -I/usr/
    local/lib/ruby/1.8/i686-linux -I. -DHAVE_MYSQL_SSL_SET -
    DHAVE_MYSQL_MYSQL_H -I/usr/include -c mysql.c
    gcc -shared -L'/usr/lib' -Wl,-R'/usr/lib' -L'/usr/local/lib' -Wl,-R'/
    usr/local/lib' -o mysql.so mysql.o -lmysqlclient -ldl -lcrypt -lm
    -lc

    [richard@www mysql-ruby-2.7]$ ruby ./test.rb localhost root
    <myrootpass> test
    /test.rb:143: undefined method `client_version' for Mysql:Class
    (NoMethodError)

    </code>

    BTW, I created an empty database called `test`.

    Anyone had a similar experience? Any ideas?

    Cheers,
    Richard
    Richard Navarrete, Feb 4, 2006
    #1
    1. Advertising

  2. Hi,

    I just packaged mysql-ruby for Fedora Core and in my SPEC file I use

    ruby extconf.rb --with-mysql-config

    This does the trick for me on Fedora Core 4. And I guess it would also
    do the trick on a RHEL server. At least it does so for me using RHEL 3.

    Kind regards,
    Oliver

    --
    Oliver Andrich --- --- http://roughbook.de/
    Oliver Andrich, Feb 4, 2006
    #2
    1. Advertising

  3. Thanks, Oliver.

    I don't have a mysql_config, not sure why. But, I noticed it wasn't
    finding the header file (mysql.h), so I ran this:

    [richard@www mysql-ruby-2.7]$ make clean
    [richard@www mysql-ruby-2.7]$ ruby ./extconf.rb --with-mysql-dir=/usr
    --with-mysql-include=/usr/include/mysql
    checking for mysql_query() in -lmysqlclient... yes
    checking for mysql_ssl_set()... yes
    checking for mysql.h... yes
    creating Makefile

    This time if found it.

    [richard@www mysql-ruby-2.7]$ make
    gcc -fPIC -g -O2 -I. -I/usr/local/lib/ruby/1.8/i686-linux -I/usr/
    local/lib/ruby/1.8/i686-linux -I. -DHAVE_MYSQL_SSL_SET -DHAVE_MYSQL_H
    -I/usr/include/mysql -I/usr/include -c mysql.c
    gcc -shared -L'/usr/lib' -Wl,-R'/usr/lib' -L'/usr/local/lib' -Wl,-R'/
    usr/local/lib' -o mysql.so mysql.o -lmysqlclient -ldl -lcrypt -lm
    -lc
    [richard@www mysql-ruby-2.7]$ ruby ./test.rb localhost root ertgnhbr
    /test.rb:143: undefined method `client_version' for Mysql:Class
    (NoMethodError)

    Same error.

    Could my compiler be the problem?

    gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-53)

    Thanks,
    Richard



    On Feb 4, 2006, at 10:28 AM, Oliver Andrich wrote:

    > Hi,
    >
    > I just packaged mysql-ruby for Fedora Core and in my SPEC file I use
    >
    > ruby extconf.rb --with-mysql-config
    >
    > This does the trick for me on Fedora Core 4. And I guess it would also
    > do the trick on a RHEL server. At least it does so for me using
    > RHEL 3.
    >
    > Kind regards,
    > Oliver
    >
    > --
    > Oliver Andrich --- --- http://roughbook.de/
    >
    Richard Navarrete, Feb 4, 2006
    #3
  4. I don't know what is wrong in your case. However, in my case, I
    wanted a newer version of MySQL than came with RHEL (RHEL4 has MySQL
    v4 - I wanted v5), so I installed a new MySQL from sources into /usr/
    local).

    Then I did 'gem install mysql -- --with-mysql-dir=/usr/local', and
    everything built fine.

    On 4 Feb 2006, at 3:58pm, Richard Navarrete wrote:

    > Howdy,
    >
    > I've successfully installed ruby-rails-mysql on my powerbook, on
    > our Windows server, but am missing something on our Linux box.
    >
    > Ruby is installed (1.8.4), so is rails (0.8.11). And I got the
    > "Congratulations, you put Ruby on Rails!" screen. I have MySQL
    > already installed (it's been there for a long time), version 4.0.25).
    >
    > Now, I need to install the driver for MySQL/Ruby (mysql-ruby-2.7).
    > Here's how the progression goes:
    >
    > <code>
    >
    > [richard@www mysql-ruby-2.7]$ ruby ./extconf.rb --with-mysql-dir=/usr
    > checking for mysql_query() in -lmysqlclient... yes
    > checking for mysql_ssl_set()... yes
    > checking for mysql.h... no
    > checking for mysql/mysql.h... yes
    > creating Makefile
    >
    > [richard@www mysql-ruby-2.7]$ make
    > gcc -fPIC -g -O2 -I. -I/usr/local/lib/ruby/1.8/i686-linux -I/usr/
    > local/lib/ruby/1.8/i686-linux -I. -DHAVE_MYSQL_SSL_SET -
    > DHAVE_MYSQL_MYSQL_H -I/usr/include -c mysql.c
    > gcc -shared -L'/usr/lib' -Wl,-R'/usr/lib' -L'/usr/local/lib' -Wl,-
    > R'/usr/local/lib' -o mysql.so mysql.o -lmysqlclient -ldl -lcrypt -
    > lm -lc
    >
    > [richard@www mysql-ruby-2.7]$ ruby ./test.rb localhost root
    > <myrootpass> test
    > ./test.rb:143: undefined method `client_version' for Mysql:Class
    > (NoMethodError)
    >
    > </code>
    >
    > BTW, I created an empty database called `test`.
    >
    > Anyone had a similar experience? Any ideas?
    >
    > Cheers,
    > Richard
    >
    >
    Derek Chesterfield, Feb 4, 2006
    #4
  5. Hi,

    I just checked on my RHEL boxes, and even your method to compile the
    module works fine there. What version of MySQL are you using and from
    which source did you take it? Official MySQL rpm files from mysql.com?
    Self-compiled?

    The first strange thing in my eyes is, that mysql_config is not there.
    Every rpm I know of installs it in /usr/bin as part of the basic MySQL
    package. ANd the second strange thing is the error while running your
    test code.

    > [richard@www mysql-ruby-2.7]$ ruby ./test.rb localhost root ertgnhbr
    > ./test.rb:143: undefined method `client_version' for Mysql:Class
    > (NoMethodError)


    I don't think that the compiler is the source of your problems. Can you
    supply the MySQL version and from where you have taken it? Or where it
    is installed?

    Regards,
    Oliver

    --
    Oliver Andrich --- --- http://roughbook.de/
    Oliver Andrich, Feb 4, 2006
    #5
  6. Hey Oliver,

    I'm using 4.0.25 and I think it's self compiled or came installed
    already. Unfortunately, I can't remember if I installed it by hand,
    but for sure it wasn't using RPMs, because I don't see such tracings
    in /usr/src/redhat...

    I'm still checking to see how MySQL got there. heh

    So, I assume by your comment that all mysql installations should have
    a mysql_config?

    Here are a few mysql files/folders I found on my system:

    /usr/bin/safe_mysqld
    /usr/bin/mysql ...mysqldump, etc
    /usr/include/mysql/libmysqlclient.so
    /usr/include/mysql/libmysqlclient.so.10
    /usr/include/mysql
    /usr/lib/libmysqlclient.so
    /usr/lib/libmysqlclient.so.10
    /usr/lib/libmysqlclient.so.12
    /usr/lib/libmysqlclient_r.so
    /usr/lib/libmysqlclient_r.so.10
    /usr/lib/libmysqlclient_r.so.12
    /usr/lib/mysql
    /usr/lib/libmysqlclient.so.10.0.0
    /usr/lib/libmysqlclient.so.12.0.0
    /usr/lib/libmysqlclient_r.so.10.0.0
    /usr/lib/libmysqlclient_r.so.12.0.0

    /usr/sbin/mysqld
    /usr/share/mysql

    I'll see if I can find out how it was installed...

    Thanks,
    Richard

    On Feb 4, 2006, at 11:36 AM, Oliver Andrich wrote:

    > Hi,
    >
    > I just checked on my RHEL boxes, and even your method to compile the
    > module works fine there. What version of MySQL are you using and from
    > which source did you take it? Official MySQL rpm files from mysql.com?
    > Self-compiled?
    >
    > The first strange thing in my eyes is, that mysql_config is not there.
    > Every rpm I know of installs it in /usr/bin as part of the basic MySQL
    > package. ANd the second strange thing is the error while running your
    > test code.
    >
    >> [richard@www mysql-ruby-2.7]$ ruby ./test.rb localhost root ertgnhbr
    >> ./test.rb:143: undefined method `client_version' for Mysql:Class
    >> (NoMethodError)

    >
    > I don't think that the compiler is the source of your problems. Can
    > you
    > supply the MySQL version and from where you have taken it? Or where it
    > is installed?
    >
    > Regards,
    > Oliver
    >
    > --
    > Oliver Andrich --- --- http://roughbook.de/
    >
    Richard Navarrete, Feb 4, 2006
    #6
  7. On Feb 4, 2006, at 2:04 PM, Richard Navarrete wrote:

    > Hey Oliver,
    >
    > I'm using 4.0.25 and I think it's self compiled or came installed
    > already. Unfortunately, I can't remember if I installed it by
    > hand, but for sure it wasn't using RPMs, because I don't see such
    > tracings in /usr/src/redhat...
    >
    > I'm still checking to see how MySQL got there. heh
    >
    > So, I assume by your comment that all mysql installations should
    > have a mysql_config?
    >
    > Here are a few mysql files/folders I found on my system:
    >
    > /usr/bin/safe_mysqld
    > /usr/bin/mysql ...mysqldump, etc
    > /usr/include/mysql/libmysqlclient.so
    > /usr/include/mysql/libmysqlclient.so.10
    > /usr/include/mysql
    > /usr/lib/libmysqlclient.so
    > /usr/lib/libmysqlclient.so.10
    > /usr/lib/libmysqlclient.so.12
    > /usr/lib/libmysqlclient_r.so
    > /usr/lib/libmysqlclient_r.so.10
    > /usr/lib/libmysqlclient_r.so.12
    > /usr/lib/mysql
    > /usr/lib/libmysqlclient.so.10.0.0
    > /usr/lib/libmysqlclient.so.12.0.0
    > /usr/lib/libmysqlclient_r.so.10.0.0
    > /usr/lib/libmysqlclient_r.so.12.0.0
    >
    > /usr/sbin/mysqld
    > /usr/share/mysql
    >
    > I'll see if I can find out how it was installed...
    >
    > Thanks,
    > Richard
    >
    > On Feb 4, 2006, at 11:36 AM, Oliver Andrich wrote:
    >
    >> Hi,
    >>
    >> I just checked on my RHEL boxes, and even your method to compile the
    >> module works fine there. What version of MySQL are you using and from
    >> which source did you take it? Official MySQL rpm files from
    >> mysql.com?
    >> Self-compiled?
    >>
    >> The first strange thing in my eyes is, that mysql_config is not
    >> there.
    >> Every rpm I know of installs it in /usr/bin as part of the basic
    >> MySQL
    >> package. ANd the second strange thing is the error while running your
    >> test code.
    >>
    >>> [richard@www mysql-ruby-2.7]$ ruby ./test.rb localhost root ertgnhbr
    >>> ./test.rb:143: undefined method `client_version' for Mysql:Class
    >>> (NoMethodError)

    >>
    >> I don't think that the compiler is the source of your problems.
    >> Can you
    >> supply the MySQL version and from where you have taken it? Or
    >> where it
    >> is installed?
    >>
    >> Regards,
    >> Oliver
    >>
    >> --
    >> Oliver Andrich --- --- http://roughbook.de/
    >>

    >
    >


    Speaking totally out of my rear end here, but it looks like A) its
    installed from an rpm (judging by the directories its installed to)
    and B) you need to install the -devel version of the rpm. Of course I
    could be completely wrong since its been a long time since A) I've
    used Linux and B) I almost always use Debian.
    Logan Capaldo, Feb 5, 2006
    #7
  8. Richard Navarrete

    Meiao Guest

    That's right, in Debian you need mysqlclient-dev (or whatever was the
    name of the package) to compile ruby-mysql.
    Meiao, Feb 6, 2006
    #8
  9. Success! I spent most of the weekend and today coming back from a
    long road.

    I went ahead and upgraded from mysql 4.0 to 4.1... I was missing
    mysql-devel for starters (as we discussed in this thread).

    I ran into lots of issues all of which are unrelated to this forum,
    but in the end... having mysql-devel (4.1.16 in my case) and possibly
    getting rid of bad glibc libraries, made the installation of mysql-
    ruby a breeze.

    I used --with-mysql-config... which I had now and it found everything
    it needed.

    Thank you all for your help!
    Richard


    On Feb 6, 2006, at 3:09 PM, Logan Capaldo wrote:

    >
    > On Feb 5, 2006, at 12:07 AM, Richard Navarrete wrote:
    >
    >> Although I'm not sure why mysql_config isn't there.

    >
    > Well, mysql_config should only be there after installing the devel
    > version, since if it does what I think it does, is show the include
    > dir and lib dir for mysql. There wouldn't be any include dirs
    > without the devel package, so even it was installed, it wouldn't
    > help. At least I think that's what is going on.
    Richard Navarrete, Feb 7, 2006
    #9
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. S P Arif Sahari Wibowo

    Running Eclipse from RHAPS2 on RHEL-4

    S P Arif Sahari Wibowo, Nov 24, 2005, in forum: Java
    Replies:
    8
    Views:
    571
    S P Arif Sahari Wibowo
    Nov 28, 2005
  2. washakie
    Replies:
    4
    Views:
    911
    washakie
    Jan 15, 2008
  3. ruds
    Replies:
    1
    Views:
    389
    John B. Matthews
    Aug 16, 2010
  4. Zach Dennis

    Ruby with RHEL 4, 64-bit

    Zach Dennis, Aug 8, 2005, in forum: Ruby
    Replies:
    1
    Views:
    92
    Jim Morris
    Aug 10, 2005
  5. Vivek Singh

    ruby-1.9.1 installation on RHEL-4

    Vivek Singh, Feb 21, 2009, in forum: Ruby
    Replies:
    2
    Views:
    111
    Joon You
    Feb 21, 2009
Loading...

Share This Page