【问题标题】:can't get "rails console" to work on ubuntu 11.10无法让“rails 控制台”在 ubuntu 11.10 上运行
【发布时间】:2011-12-20 23:15:41
【问题描述】:

我想使用 rails 控制台,我使用的是 ubuntun 11.10,目前我发现了问题

错误是什么:

completion.rb:9:in `require': no such file to load -- readline (LoadError)

我找到了解决方法:

http://blog.jasonmeridth.com/2010/11/25/readline-error-with-rvm-and-rails-3.html

但似乎在 ubuntu 11.10 中缺少 libreadline5-dev 并被版本 6 替换

我安装了第 6 版,还从

获得了第 5 版

https://launchpad.net/ubuntu/oneiric/i386/libreadline-gplv2-dev/5.2-9ubuntu1

但如果我尝试运行以下代码:

ruby extconf.rb

我会得到以下几行:

checking for tgetnum() in -lncurses... yes
checking for readline/readline.h... yes
checking for readline/history.h... yes
checking for readline() in -lreadline... no
checking for readline() in -ledit... no
checking for editline/readline.h... no

“否”部分是我的问题,我该如何解决这个问题?

【问题讨论】:

    标签: ruby-on-rails-3 ubuntu-11.10


    【解决方案1】:

    Ubuntu 11.10 使用较新的 readline 库,它与 rvm 提供的 readline 包不同步

    要解决这个问题(假设您使用 rvm 的单用户安装),请执行以下操作:

    1) 确保您已安装 ubuntus readline 和 editline 开发包

    ​​>
    sudo apt-get install libreadline6 libreadline6-dev
    

    2) 配置 ruby​​ 的 readline 扩展以使用系统库,而不是 rvm 的包

    rvm pkg uninstall readline
    cd ~/.rvm/src/ruby-1.9.2-p290/ext/readline
    ruby extconf.rb --with-editline-dir=/usr/ --with-readline-dir=/usr/
    make
    make install
    

    3) 转到您的项目并启动 rails 控制台



    提示:您可以调用

    rvm requirements
    

    查看应该安装哪些 ubuntu 软件包以使用 rvm ruby​​

    【讨论】:

    • 对我来说完美无缺。谢谢。
    • 终于可以解决朋友服务器上的问题了。谢谢。
    【解决方案2】:

    您必须在编译 ruby​​ 之前安装 readline 开发包。跑吧

    sudo apt-get install libreadline6-dev
    

    替代方案(如您链接的文章中所建议),您可以使用 RVM 通过运行来获取适当的 readline 源

    rvm package install readline
    

    编辑:一旦你从源代码安装了 readline 包,你就可以像这样安装你的 rubies

    rvm install 1.9.3 --with-readline-dir="$rvm_path/usr"
    

    如果您已经安装了特定的 ruby​​,只需在 install 上使用 reinstall

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-20
    • 1970-01-01
    • 1970-01-01
    • 2014-10-31
    • 1970-01-01
    • 2010-12-18
    • 1970-01-01
    • 2011-12-10
    相关资源
    最近更新 更多