2

RedHat Enterprise Linux 5 では、RPM から入手できる最新の Ruby バージョンは 1.8.5 です。私の Rails アプリには 1.8.6 以降が必要なので、Ruby をソースからコンパイルする必要があります。

私はそれをビルドするために次のことを試みましたが、問題なくビルドできたようですが、RubyInline を必要とするプラグインを実行しようとすると gcc コンパイル エラーが発生します。

Rails アプリの実行に適した、ソースから Ruby をビルドするための適切なドキュメントが不足しているようです。

Rubyをコンパイルする方法は次のとおりです。

./configure --prefix=/usr --with-openssl-include=/usr/include/openssl --with-openssl-lib=/usr/lib64/openssl/engines
make
sudo make install

これを 64 ビット システムでビルドするために必要な特定のコンパイル フラグがあるかどうか疑問に思います。私が見ている実際のエラーは

 error executing "gcc -shared   -fPIC -g -O2   -I /usr/lib/ruby/1.8/x86_64-linux  -I /usr/include -L/usr/lib -o \"/home/deploy/.ruby_inline/Inline_ImageScience_aa58.so\" \"/home/deploy/.ruby_inline/Inline_ImageScience_aa58.c\" -lfreeimage -lstdc++ ":

どんなアドバイスでも大歓迎です

4

2 に答える 2

2

おそらく最善の方法は、FedoraからRuby1.8.6RPMを「盗む」ことです。2番目に良い方法は、FedoraからRuby 1.8.6 SRPMを盗み、自分でビルドすることです。

ただし、実行できることが1つあります。それ--disable-pthreadは、行にフラグを追加し、そこにある場合はconfigure削除--enable-pthreadすることです。--enable-pthreadMRIが大幅に遅くなり、Ruby / Tkを使用する場合にのみ必要であり、システムのTkライブラリはで構築されてい--enable-pthreadます。

于 2009-01-09T14:48:52.337 に答える
0

Fedora 用 Ruby パッケージ(SRPM を含む)

正解に対するコメントとして投稿できなかったため、ここに追加しました - 編集者は自由に片付けてください。

于 2010-02-02T06:23:35.443 に答える