4

我一直在关注这里的指南:http: //spontaneousderivation.com/2012/09/30/rails-3-2-on-a-shared-dreamhost-server/ 以运行 rails 3.2 和 ruby​​ 1.9.3一个dreamhost共享服务器,但我遇到了一个他们没有提到的错误。安装 rvm 后,它无法在没有 root 访问权限的情况下安装要求,而我没有。它列出了以下要求:

libreadline6-dev, libyaml-dev, automake, libtool, libffi-dev

如果我通过设置以下设置 autolibs 忽略这一点

rvm autolibs 1

并运行:

rvm install ruby-1.9.3

然后它到达编译步骤并给出此错误:

Error running 'make -j8',
please read /home/USER/.rvm/log/ruby-1.9.3-p392/make.log
There has been an error while running make. Halting the installation.

有谁知道我可以绕过这个的方法吗?我已经尝试了几天了。

这是make.log的内容:

    CC = gcc
LD = ld
LDSHARED = gcc -shared
CFLAGS = -O3 -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration  -fPIC 
XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT
CPPFLAGS =   -I. -I.ext/include/x86_64-linux -I./include -I.
DLDFLAGS = -Wl,-soname,libruby.so.1.9  
SOLIBS = -lpthread -lrt -ldl -lcrypt -lm  
compiling main.c
compiling dmydln.c
compiling dmyencoding.c
compiling version.c
compiling array.c
compiling miniprelude.c
compiling bignum.c
compiling class.c
compiling compar.c
compiling complex.c
compiling dir.c
compiling dln_find.c
compiling enum.c
compiling enumerator.c
make: *** [enumerator.o] Killed
make: *** Waiting for unfinished jobs....
4

2 回答 2

3

您应该使用二进制文件安装 ruby​​(没有编译错误)。像这样:

$ rvm list remote

# Rubies available for 'debian/6/x86_64':
  ruby-1.9.3-p194
  ruby-1.9.3-p286
  ruby-1.9.3-p327
  ruby-1.9.3-p362
  ruby-1.9.3-p374
* ruby-1.9.3-p392
  ruby-1.9.3-p429
  ruby-1.9.3-p448
  ruby-2.0.0-p0
  ruby-2.0.0-p195
* ruby-2.0.0-p247

# * - installed already

那么你像这样安装二进制文件:

$ rvm mount -r https://rvm.io/binaries/{YOUR_SERVER_ENV}/{RUBY_VERSION}.tar.bz2 --verify-downloads 1

或者

$ rvm mount -r https://rvm.io/binaries/debian/6.0.4/x86_64/ruby-1.9.3-p448.tar.bz2 --verify-downloads 1

当然,您不能将Passenger 与RVM 以及ruby-1.8.7 以外的任何东西一起使用。请参阅这篇文章来设置 FastCGI:http ://wiki.dreamhost.com/Rails_3#Using_FastCGI

于 2013-10-08T03:33:52.670 回答
0

不确定这篇 wiki 文章是否存在,但 Dreamhost 现在有一篇。直接从中获取并假设您具有 SSH 访问权限,

检查以确保正确安装了 rvm:

rvm --version
rvm 1.26.11 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

获取可用版本列表:

rvm list known

安装你想要的版本

rvm install 2.2.2

告诉系统默认的 ruby​​ 版本

rvm use 2.2.2 --default

检查以确保安装了正确的 ruby​​ 版本

ruby -v
ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux]

如果这不起作用 - 我将按照教程中的步骤再次安装 rvm

  1. 安装 RVM 的公钥

    gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
    
  2. 安装最新的稳定版本的 RVM,这将

    curl -sSL https://get.rvm.io | bash -s stable
    

    在您的用户下创建一个名为 /.rvm 的新文件夹
    将此行添加到您的 .bash_profile

    [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
    

    将此行添加到您的 .bashrc 文件中:

    export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting
    
  3. 运行这个来取消你的 GEM_HOME

    unset GEM_HOME
    
  4. 运行此命令以获取新的 RVM 安装:

    source ~/.rvm/scripts/rvm
    
  5. 将此添加到您的 .bashrc 文件中

    source .bash_profile
    
  6. 运行此命令以更新您的 .bash_profile:

    . ~/.bash_profile
    
  7. 现在检查 RVM 是否已安装并正常运行:

    rvm --version
    rvm 1.26.11 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
    
于 2015-09-19T20:43:20.620 回答