1

こんにちは、

Ruby 1.9.2 で Rails 3.0 をインストールしようとしています。Linux ボックスで。私はファイアウォールの背後にいて、自分のマシンにルート アクセス権がないため、ホーム ディレクトリにすべてを構築しようとしています。apt-get または yum にアクセスできません。ソースからすべてをビルドする必要があります (gem を除く)。

Ruby、Rails、および MySQL のコンパイルとビルドに成功しました。私の問題は、レールが libmysqlclient.so.15 ライブラリを見つけられないことです。ライブラリの場所を伝えるために「gem install mysql2」の考えられるすべてのオプションを試しましたが、うまくいきませんでした。LD_LIBRARY_PATH にローカルの mysql/lib ディレクトリがある場合、すべてが機能することに注意してください。ライブラリの場所をmysql2に伝える方法がわかりません。誰か助けてくれませんか?

ありがとう、

スタン・マクファーランド

4

2 に答える 2

0

mysql-dev パッケージもインストールする必要があると思います。

于 2011-02-08T14:02:31.097 に答える
0

ファイル libmysqlclient_r.so.15 は mysql shared-compat パッケージにあります。以下の例は、特定のミラーを使用しており、32 ビットの汎用 Linux 用です。プラットフォームに適したパッケージは、 http://dev.mysql.com/downloads/mysql/で見つけることができます。

$ wget http://dev.mysql.com/get/Downloads/MySQL-5.5/MySQL-shared-compat-5.5.13-1.linux2.6.i386.rpm/from/http://mysql.mirrors.pair.com/
$ yum install --nogpgcheck MySQL-shared-compat-5.5.13-1.linux2.6.i386.rpm

そのデフォルトのインストール パスは、mysql2 gem が使用したものと同じです。

OS X では、gem 内のライブラリの場所を常に手動で更新する必要があることを知っています。同じトリックが Linux でもうまくいくはずです。プラットフォームに合わせて名前とパスを調整します。

$ sudo install_name_tool -change libmysqlclient.16.dylib /usr/local/mysql/lib/libmysqlclient.16.dylib ~/.rvm/rubies/ruby-1.8.6-p399/lib/ruby/gems/1.8/gems/mysql-2.7/lib/mysql.bundle
于 2011-06-29T21:49:00.093 に答える