我正在努力使用 rvm。这不是我第一次安装 rvm,也不是我第一次遇到问题,但这个问题确实很痛苦;所有看似相关的文章要么完全过时,要么没有解决这个问题。
我已经安装了 rvm,但是当我尝试安装任何版本的 Ruby 时都会收到错误。
这是我正在使用的命令:
$ rvm package install readline
$ rvm install ree -C --with-readline-dir=$HOME/.rvm/usr
ree-1.8.7-2010.02 - #fetching (ruby-enterprise-1.8.7-2010.02)
ree-1.8.7-2010.02 - #extracting ruby-enterprise-1.8.7-2010.02 to /Users/Richard/.rvm/src/ree-1.8.7-2010.02
ree-1.8.7-2010.02 - #installing
Error running './installer -a /Users/Richard/.rvm/rubies/ree-1.8.7-2010.02 --dont-install-useful-gems ', please check /Users/Richard/.rvm/log/ree-1.8.7-2010.02/install*.log
There has been an error while trying to run the ree installer. Halting the installation.
并在日志文件中:
ossl_x509revoked.c:64: warning: passing argument 2 of ‘ASN1_dup’ from incompatible pointer type
readline.c: In function ‘username_completion_proc_call’:
readline.c:734: error: ‘username_completion_function’ undeclared (first use in this function)
readline.c:734: error: (Each undeclared identifier is reported only once
readline.c:734: error: for each function it appears in.)
make[1]: *** [readline.o] Error 1
make: *** [all] Error 1
鉴于我明确告诉 rvm 使用另一个 readline 安装,有人知道我哪里错了吗?
达夫
答案1
更新至rvm最新版本
rvm get stable
然后运行 rvm reload
rvm reload
这似乎已经解决了这个问题。
答案2
我也为 readline 问题而苦恼。问题出在缺乏正确的先决条件。我通过确保所有东西都已安装解决了这个问题:
sudo apt-get install build-essential bison openssl \
libreadline6 libreadline6-dev curl git-core \
lib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 \
libsqlite3-dev sqlite3 libxml2-dev libxslt-dev \
autoconf libc6-dev ncurses-dev
我已经编写了一个完整的教程,让 RVM 在 Ubuntu 11.04 上完美运行:
http://blog.dcxn.com/2011/06/20/setting-up-rvm-on-ubuntu-11-04/