2012-01-17 3 views
5

Я только что выпустил v2.0.0 ginjo-rfm gem. Когда я устанавливаю этот драгоценный камень на складе Snow Leopard машины (Rubygems версия 1.3.5), я получаю следующее сообщение об ошибке:Странные ошибки при установке моего драгоценного камня

admin$ sudo gem install ginjo-rfm --no-rdoc --no-ri 
ERROR: Error installing ginjo-rfm: 
    multi_json requires RubyGems version >= 1.3.6 

Однако драгоценный камень устанавливается и работает успешно.

У меня есть только одна зависимость от выполнения: ActiveSupport> = 2.3.5, и это уже установлено на всех моих машинах. В моем драгоценности нигде нет, что я даже упоминаю multi_json.

Даже незнакомец, когда я пытаюсь установить ginjo-rfm на Ubuntu 8.10 (rubygems version 1.3.5), rubygems выдает ошибку переполнения буфера (см. Ниже).

Что случилось с моим драгоценным камнем? Это довольно простой камень & gemspec. Я прочесал его и не могу найти никаких проблем, которые могли бы вызвать такие ошибки.

Если кто захочет взглянуть на необработанного драгоценного камня:

mkdir ginjo; cd ginjo 
gem fetch ginjo-rfm 
tar -xf ginjo-rfm-2.0.0.gem 

Или увидеть gemspec погруженными в YAML в файле «метаданных» (смотрите ниже).

Спасибо!

Переполнение буфера Ошибка

~$ sudo gem install ginjo-rfm --no-rdoc --no-ri 
*** buffer overflow detected ***: /usr/local/bin/ruby terminated 
======= Backtrace: ========= 
/lib/tls/i686/cmov/libc.so.6(__fortify_fail+0x48)[0xf76bf558] 
/lib/tls/i686/cmov/libc.so.6[0xf76bd680] 
/usr/local/lib/ruby/1.8/i686-linux/syck.so(rb_syck_mktime+0x545)[0xf752cdb5] 
/usr/local/lib/ruby/1.8/i686-linux/syck.so(yaml_org_handler+0xabc)[0xf752d8dc] 
/usr/local/lib/ruby/1.8/i686-linux/syck.so(syck_defaultresolver_node_import+0x3f)[0xf752d9af] 
/usr/local/bin/ruby[0x8060c74] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x8061a5a] 
/usr/local/bin/ruby(rb_funcall+0x20)[0x8061b90] 
/usr/local/lib/ruby/1.8/i686-linux/syck.so(rb_syck_load_handler+0x69)[0xf752b269] 
/usr/local/lib/ruby/1.8/i686-linux/syck.so(syck_hdlr_add_node+0x4d)[0xf7525edd] 
/usr/local/lib/ruby/1.8/i686-linux/syck.so(syckparse+0xc11)[0xf7526cb1] 
/usr/local/lib/ruby/1.8/i686-linux/syck.so(syck_parse+0x32)[0xf7522e12] 
/usr/local/lib/ruby/1.8/i686-linux/syck.so(syck_parser_load+0x112)[0xf752dd92] 
/usr/local/bin/ruby[0x8056ecd] 
/usr/local/bin/ruby[0x8060c74] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x805ba84] 
/usr/local/bin/ruby[0x805cd31] 
/usr/local/bin/ruby[0x8060b79] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x805ba84] 
/usr/local/bin/ruby[0x805cd31] 
/usr/local/bin/ruby[0x8060b79] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x805ba84] 
/usr/local/bin/ruby[0x805e605] 
/usr/local/bin/ruby[0x8060b79] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x805bb9c] 
/usr/local/bin/ruby[0x805cde1] 
/usr/local/bin/ruby[0x805e766] 
/usr/local/bin/ruby[0x805f412] 
/usr/local/bin/ruby[0x805be2d] 
/usr/local/bin/ruby[0x805f412] 
/usr/local/bin/ruby[0x8069ac5] 
/usr/local/bin/ruby[0x8060c74] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x805bb9c] 
/usr/local/bin/ruby[0x805ec18] 
/usr/local/bin/ruby[0x8060b79] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x805ba84] 
/usr/local/bin/ruby[0x805ec18] 
/usr/local/bin/ruby[0x8060b79] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby(rb_obj_call_init+0x49)[0x8061779] 
/usr/local/bin/ruby(rb_class_new_instance+0x2a)[0x808b53a] 
/usr/local/bin/ruby[0x8056ecd] 
/usr/local/bin/ruby[0x8060c74] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby(rb_call_super+0x68)[0x8068de8] 
/usr/local/bin/ruby[0x80603ad] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x805bb9c] 
/usr/local/bin/ruby[0x805cd31] 
/usr/local/bin/ruby[0x805e766] 
/usr/local/bin/ruby[0x8060b79] 
/usr/local/bin/ruby[0x8060e14] 
/usr/local/bin/ruby[0x805ba84] 
/usr/local/bin/ruby[0x8069e43] 
/usr/local/bin/ruby[0x805d2be] 
/usr/local/bin/ruby[0x8060b79] 
======= Memory map: ======== 
08048000-080fb000 r-xp 00000000 ca:01 745349        /usr/local/bin/ruby 
080fb000-080fc000 r--p 000b2000 ca:01 745349        /usr/local/bin/ruby 
080fc000-080fd000 rw-p 000b3000 ca:01 745349        /usr/local/bin/ruby 
080fd000-0810d000 rw-p 00000000 00:00 0 
09fa2000-0cf87000 rw-p 00000000 00:00 0         [heap] 
f68d4000-f6c6f000 rw-p 00000000 00:00 0 
f6ed9000-f6ee6000 r-xp 00000000 ca:01 743029        /lib/libgcc_s.so.1 
f6ee6000-f6ee7000 r--p 0000c000 ca:01 743029        /lib/libgcc_s.so.1 
f6ee7000-f6ee8000 rw-p 0000d000 ca:01 743029        /lib/libgcc_s.so.1 
f6ef6000-f6f06000 r-xp 00000000 ca:01 1523795       /lib/tls/i686/cmov/libresolv-2.8.90.so 
f6f06000-f6f07000 r--p 0000f000 ca:01 1523795       /lib/tls/i686/cmov/libresolv-2.8.90.so 
f6f07000-f6f08000 rw-p 00010000 ca:01 1523795       /lib/tls/i686/cmov/libresolv-2.8.90.so 
f6f08000-f6f0a000 rw-p 00000000 00:00 0 
f6f0a000-f6f0e000 r-xp 00000000 ca:01 1523788       /lib/tls/i686/cmov/libnss_dns-2.8.90.so 
f6f0e000-f6f0f000 r--p 00003000 ca:01 1523788       /lib/tls/i686/cmov/libnss_dns-2.8.90.so 
f6f0f000-f6f10000 rw-p 00004000 ca:01 1523788       /lib/tls/i686/cmov/libnss_dns-2.8.90.so 
f6f10000-f6f12000 r-xp 00000000 ca:01 743040        /lib/libnss_mdns4_minimal.so.2 
f6f12000-f6f13000 rw-p 00001000 ca:01 743040        /lib/libnss_mdns4_minimal.so.2 
f6f1b000-f7122000 rw-p 00000000 00:00 0 
f7122000-f712c000 r-xp 00000000 ca:01 807183        /usr/local/lib/ruby/1.8/i686-linux/socket.so 
f712c000-f712d000 r--p 00009000 ca:01 807183        /usr/local/lib/ruby/1.8/i686-linux/socket.so 
f712d000-f712e000 rw-p 0000a000 ca:01 807183        /usr/local/lib/ruby/1.8/i686-linux/socket.so 
f712e000-f7131000 r-xp 00000000 ca:01 807158        /usr/local/lib/ruby/1.8/i686-linux/digest.so 
f7131000-f7132000 r--p 00002000 ca:01 807158        /usr/local/lib/ruby/1.8/i686-linux/digest.so 
f7132000-f7133000 rw-p 00003000 ca:01 807158        /usr/local/lib/ruby/1.8/i686-linux/digest.so 
f7133000-f7147000 r-xp 00000000 ca:01 745216        /usr/lib/libz.so.1.2.3.3 
f7147000-f7149000 rw-p 00013000 ca:01 745216        /usr/lib/libz.so.1.2.3.3 
f7149000-f727c000 r-xp 00000000 ca:01 32847        /usr/lib/i686/cmov/libcrypto.so.0.9.8 
f727c000-f7284000 r--p 00132000 ca:01 32847        /usr/lib/i686/cmov/libcrypto.so.0.9.8 
f7284000-f7291000 rw-p 0013a000 ca:01 32847        /usr/lib/i686/cmov/libcrypto.so.0.9.8 
f7291000-f7295000 rw-p 00000000 00:00 0 
f7295000-f72d7000 r-xp 00000000 ca:01 32848        /usr/lib/i686/cmov/libssl.so.0.9.8 
f72d7000-f72d8000 ---p 00042000 ca:01 32848        /usr/lib/i686/cmov/libssl.so.0.9.8 
f72d8000-f72d9000 r--p 00042000 ca:01 32848        /usr/lib/i686/cmov/libssl.so.0.9.8 
f72d9000-f72dc000 rw-p 00043000 ca:01 32848        /usr/lib/i686/cmov/libssl.so.0.9.8 
f72dc000-f7313000 r-xp 00000000 ca:01 807173        /usr/local/lib/ruby/1.8/i686-linux/openssl.so 
f7313000-f7314000 r--p 00036000 ca:01 807173        /usr/local/lib/ruby/1.8/i686-linux/openssl.so 
f7314000-f7315000 rw-p 00037000 ca:01 807173        /usr/local/lib/ruby/1.8/i686-linux/openssl.so 
f7315000-f7432000 rw-p 00000000 00:00 0 
f7432000-f743c000 r-xp 00000000 ca:01 1523789       /lib/tls/i686/cmov/libnss_files-2.8.90.so 
f743c000-f743d000 r--p 00009000 ca:01 1523789       /lib/tls/i686/cmov/libnss_files-2.8.90.so 
f743d000-f743e000 rw-p 0000a000 ca:01 1523789       /lib/tls/i686/cmov/libnss_files-2.8.90.so 
f743e000-f7447000 r-xp 00000000 ca:01 1523791       /lib/tls/i686/cmov/libnss_nis-2.8.90.so 
f7447000-f7448000 r--p 00008000 ca:01 1523791       /lib/tls/i686/cmov/libnss_nis-2.8.90.soAborted 
[email protected]:~$ 

файл метаданных, содержащий gemspec в YAML

--- !ruby/object:Gem::Specification 
name: ginjo-rfm 
version: !ruby/object:Gem::Version 
    hash: 15 
    prerelease: 
    segments: 
    - 2 
    - 0 
    - 0 
    version: 2.0.0 
platform: ruby 
authors: 
- Geoff Coffey 
- Mufaddal Khumri 
- Atsushi Matsuo 
- Larry Sprock 
- Bill Richardson 
autorequire: 
bindir: bin 
cert_chain: [] 

date: 2012-01-08 00:00:00 Z 
dependencies: 
- !ruby/object:Gem::Dependency 
    name: activesupport 
    prerelease: false 
    requirement: &id001 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 9 
     segments: 
     - 2 
     - 3 
     - 5 
     version: 2.3.5 
    type: :runtime 
    version_requirements: *id001 
- !ruby/object:Gem::Dependency 
    name: activemodel 
    prerelease: false 
    requirement: &id002 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id002 
- !ruby/object:Gem::Dependency 
    name: rake 
    prerelease: false 
    requirement: &id003 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id003 
- !ruby/object:Gem::Dependency 
    name: rdoc 
    prerelease: false 
    requirement: &id004 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id004 
- !ruby/object:Gem::Dependency 
    name: rspec 
    prerelease: false 
    requirement: &id005 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ~> 
     - !ruby/object:Gem::Version 
     hash: 27 
     segments: 
     - 1 
     - 3 
     - 0 
     version: 1.3.0 
    type: :development 
    version_requirements: *id005 
- !ruby/object:Gem::Dependency 
    name: diff-lcs 
    prerelease: false 
    requirement: &id006 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id006 
- !ruby/object:Gem::Dependency 
    name: yard 
    prerelease: false 
    requirement: &id007 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id007 
- !ruby/object:Gem::Dependency 
    name: libxml-ruby 
    prerelease: false 
    requirement: &id008 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id008 
- !ruby/object:Gem::Dependency 
    name: nokogiri 
    prerelease: false 
    requirement: &id009 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id009 
- !ruby/object:Gem::Dependency 
    name: hpricot 
    prerelease: false 
    requirement: &id010 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id010 
- !ruby/object:Gem::Dependency 
    name: ox 
    prerelease: false 
    requirement: &id011 !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
     - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
    type: :development 
    version_requirements: *id011 
description: Rfm lets your Ruby scripts and Rails applications talk directly to your Filemaker server. Ginjo-rfm includes ActiveModel compatibility, multiple XML parsers, compound Filemaker find requests, and a configuration API. 
email: http://groups.google.com/group/rfmcommunity 
executables: [] 

extensions: [] 

extra_rdoc_files: 
- LICENSE 
- README.md 
- CHANGELOG.md 
- lib/rfm/VERSION 
files: 
- lib/rfm/base.rb 
- lib/rfm/database.rb 
- lib/rfm/error.rb 
- lib/rfm/layout.rb 
- lib/rfm/metadata/field.rb 
- lib/rfm/metadata/field_control.rb 
- lib/rfm/metadata/script.rb 
- lib/rfm/metadata/value_list_item.rb 
- lib/rfm/record.rb 
- lib/rfm/resultset.rb 
- lib/rfm/server.rb 
- lib/rfm/utilities/case_insensitive_hash.rb 
- lib/rfm/utilities/compound_query.rb 
- lib/rfm/utilities/config.rb 
- lib/rfm/utilities/core_ext.rb 
- lib/rfm/utilities/factory.rb 
- lib/rfm/utilities/xml_parser.rb 
- lib/rfm/version.rb 
- lib/rfm/xml_mini/hpricot.rb 
- lib/rfm/xml_mini/ox_sax.rb 
- lib/rfm/xml_mini/rexml_sax.rb 
- lib/rfm.rb 
- lib/rfm/VERSION 
- LICENSE 
- README.md 
- CHANGELOG.md 
homepage: https://rubygems.org/gems/ginjo-rfm 
licenses: [] 

post_install_message: 
rdoc_options: 
- --line-numbers 
- --main 
- README.md 
require_paths: 
- lib 
required_ruby_version: !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">=" 
    - !ruby/object:Gem::Version 
     hash: 3 
     segments: 
     - 0 
     version: "0" 
required_rubygems_version: !ruby/object:Gem::Requirement 
    none: false 
    requirements: 
    - - ">" 
    - !ruby/object:Gem::Version 
     hash: 25 
     segments: 
     - 1 
     - 3 
     - 1 
     version: 1.3.1 
requirements: [] 

rubyforge_project: 
rubygems_version: 1.8.10 
signing_key: 
specification_version: 3 
summary: Ruby to Filemaker adapter 
test_files: [] 

has_rdoc: 
+0

Зависимость multi json, вероятно, от активной поддержки (в версиях> = 3.1, я думаю) –

+0

Вот что я думаю тоже. Но я не понимаю, почему это отключает меня, когда у меня уже установлен ActiveSupport 2.3.5. Интересно, что что-то не так с моим gemspec, который заставляет rubygems пропускать установленный ActiveSupport и вместо этого искать v3.1. – wbr

+0

Ugh, это не проблема зависимости, или, по крайней мере, не проблема с перечисленными зависимостями gemspec. Я удалил все зависимости из gemspec, и я все еще получаю ошибку multi_json на Snow Leopard и ошибку переполнения буфера на Ubuntu 8.10. Итак ... должна быть проблема где-то в коде моего драгоценного камня. Действительно ли rubygems загружают драгоценный камень во время процесса установки? – wbr

ответ

6

Ваша версия RubyGems это устарелый. Просто сделать это:

sudo gem update --system 

, а затем:

sudo gem install rails 

протестирована и работает на Mac OS X Snow Leopard 10.6.8.

+0

Да: 1.3.x около 2 лет. Спасите себе скорбь и обновите ее. –

+0

Просто для наблюдения, я думаю, что это определенно проблема. Я использую RVM для установки гораздо более свежих рубинов и рубигемов, и с тех пор я не сталкивался с этой проблемой. – wbr