2011-08-04 67 views
2

我试图在Linux中安装包“Capistrano的”,但得到了以下错误:创业板安装Capistrano的失败

*** buffer overflow detected ***: /usr/bin/ruby terminated 

此外,它给我的内存映射的列表,然后安装过程被中止。

任何想法是什么导致此错误?

干杯 罗兰

+0

我用下面的命令来安装软件包:创业板安装Capistrano的 – roland

回答

1

此错误可能与一些红宝石1.8.6错误(看到这个帖子http://opsrealism.tumblr.com/post/4931621276/mirroring-rubygems-and-ruby-9-2-on-centos-5-5了一些更多的细节),所以你可能会尝试你的Ruby升级到1.8.7,如果可能的话。

另一种选择是尝试安装一些老版本的宝石 - 它在几次工作中对我有用,其中精确的宝石版本并不重要。例如,

gem install capistrano --version "=2.7.0"

可能工作。

+0

感谢您的信息。问题是我无法升级到较老的/从未使用红宝石的gem版本,因为我的环境需要反映生产环境,其中,令我惊讶的是,执行gem install命令时没有问题。谢谢 – roland

+0

@roland,从不知道,很高兴你已经知道了这一切 – spariev

5

在CentOS 6.7,Ruby 1.8.5,gem 1.3.1上安装Capistrano时,我遇到了类似的问题。原来这个问题是由最新的高线包引起的。

下面让我来正确安装Capistrano的:

gem install highline --version "=1.6.2" 
    gem install capistrano --version "=2.6.0" 
+1

我试图安装高级版本'1.6.11'(截至2012年2月7日的最新版本)一路下降到'1.6.5',他们都遇到缓冲区溢出,使用以下设置['CentOS 5.7','Ruby 1.8.5','Gem 1.3.1']。版本1.6.3'和'1.6.4'似乎没有被释放。 – Rudisimo

0

我运行:

  • Centos的5.5
  • 的Ruby 1.8.5
  • 宝石1.3.1

我把问题缩小到了第高线宝石。尽管我试图手动安装所有的依赖关系(可以工作),但它仍然无法自行加载,除非我遵循上述建议并指定了版本1.6.2。 =(

gem install highline --version "=1.6.2" 

希望,我会迁移掉这个古老的操作系统的推出。

0

我不得不安装cap为CentOS 5.8类似的问题,但它使用RVM安装程序(升级到最新的Ruby工作,我用1.9.2p320 (2012-04-20 revision 35421) [x86_64-linux]

I D什么

  1. yum remove ruby(摆脱1.8.x的的)
  2. 我跟着在https://rvm.io/rvm/install/简单说明安装RVM
  3. 创业板安装Capistrano的
  4. cap命令被发现!

希望这有助于某人