gpt4 book ai didi

ruby-on-rails - 在 64 位 RedHat Linux 上从源代码编译 Ruby 的最佳方法是什么

转载 作者:太空狗 更新时间:2023-10-29 12:22:18 24 4
gpt4 key购买 nike

在 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++ ":

任何建议将不胜感激

最佳答案

最好的方法可能是从 Fedora 中“窃取”一个 Ruby 1.8.6 RPM。第二种最佳方法是从 Fedora 窃取 Ruby 1.8.6 SRPM 并自行构建。

但是,您可以做一件事:将 --disable-pthread 标志添加到 configure 行并删除 --enable-pthread 如果它在那里。 --enable-pthread 使 MRI 显着 变慢,只有当你想使用 Ruby/Tk 并且你的系统的 Tk 库是用 --enable 构建时才需要-pthread.

关于ruby-on-rails - 在 64 位 RedHat Linux 上从源代码编译 Ruby 的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/428144/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com