在Ubuntu Lucid Lynx上安装Heroku已经坏了

时间:2010-07-19 15:36:20

标签: ruby-on-rails ubuntu heroku readline libreadline

我想在某个地方免费托管一个Ruby on Rails应用程序,而Heroku看起来就像我的最后一个资源。它应该在Linux上工作,并且gem安装没有错误,但每当我运行任何Heroku命令时,它会吐出几个错误,全部连接,并且讨论失败的'require'。我在代码中查了一下,然后说:

require 'readline'  

就是这样。

我已经尝试安装我能找到和想到的每个libreadline变体,但没有任何区别。这里有什么想法吗?

3 个答案:

答案 0 :(得分:4)

可能是您的系统安装版本的Ruby不是使用readline支持构建的。如果是,那么您可以从源重新安装它,并为readline支持选择正确的configure参数。这不仅令人讨厌,而且意味着您必须自己手动维护更新。

最好还是放弃你的系统Ruby,而选择安装了RVM

的系统。
  1. 按照here
  2. 所述安装RVM
  3. 安装libreadline-dev

    $ sudo apt-get install libreadline-dev

  4. 安装ruby版本(例如1.8.7)

    $ rvm install 1.8.7

    $ rvm --default 1.8.7

  5. 在RVM ruby​​下安装rails和Heroku gem

    $ gem install rails heroku taps ...#注意没有sudo!

  6. 查看问题是否仍然存在

  7. 如果是,请执行以下操作:

    $ cd ~/.rvm/src/ruby-1.8.7-p299/ext/readline

    $ ruby extconf.rb

    $ make

    $ make install

答案 1 :(得分:2)

Ubuntu的ruby-full package取决于libreadline-ruby,应该引入你和它所需要的一切。如果您尝试通过安装一堆独立的软件包来安装ruby,那么您可能会遗漏一些东西。如果是这种情况,请返回并安装ruby-full。

每当我安装最新的Ubuntu时,我都会使用script来重建我的Rails环境。它还安装了Heroku(我托管我的应用程序)所需的一切。你可能想看看它,看看你有什么遗失的。

如果ruby-full没有把你排除在外,我会提出Bjg的建议并抛弃RVM的系统ruby。

答案 2 :(得分:0)

我得到了它的工作,但这是一个黑客。我从安装它的地方(在一些奇怪的地方)搜索了readline.so文件,并且做了一个硬链接到ruby寻找readline的地方,并且它有效。不是最佳的,我一定会尝试下次你们推荐的。谢谢!