2012-01-17 19 views
5

Ho appena rilasciato la v2.0.0 della gemma ginjo-rfm. Quando installo questo gioiello su una macchina Stock Snow Leopard (rubygems versione 1.3.5), ottengo il seguente errore:Errori strani quando si installa la gemma

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

Tuttavia, la gemma installa ed esegue con successo.

Ho solo una dipendenza di runtime: ActiveSupport> = 2.3.5 e questo è già installato su tutte le mie macchine. Non c'è da nessuna parte nella mia gemma che io abbia mai menzionato il multi json.

Ancora più strano, quando provo ad installare GINJO-RFM su Ubuntu 8.10 (rubygems versione 1.3.5), RubyGems genera un errore di overflow del buffer (vedi sotto).

Cosa c'è che non va nella mia gemma? È una gemma abbastanza semplice & gemspec. L'ho pettinato e non riesco a trovare alcun problema che possa causare questo tipo di errori.

Se qualcuno si sarebbe preso cura di avere uno sguardo alla gemma grezza:

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

Oppure, consultare la gemspec come incorporato come YAML nel file 'metadati' (vedi sotto).

Grazie!

di overflow del buffer Errore

~$ 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]:~$ 

file Metadati contenente gemspec come 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

La dipendenza multi-json è probabilmente proveniente dal supporto attivo (nelle versioni> = 3.1 Penso) –

+0

Questo è quello che penso anch'io. Ma non capisco perché mi stia inciampando quando ho già installato ActiveSupport 2.3.5. Mi chiedo se c'è qualcosa di sbagliato nel mio gemspec che sta facendo sì che rubygems salti l'ActiveSupport installato e cerchi invece v3.1. – wbr

+0

Ugh, non sembra essere un problema di dipendenza, o almeno non un problema con le dipendenze gemspec elencate. Ho rimosso tutte le dipendenze dalla gemspec, e ottengo ancora l'errore multi_json su Snow Leopard e l'errore di buffer overflow su Ubuntu 8.10. Quindi ... ci deve essere un problema da qualche parte nel codice della mia gemma. Rubygems in realtà carica la gemma durante il processo di installazione? – wbr

risposta

6

La versione RubyGems è out-of-date. Semplicemente fare questo:

sudo gem update --system 

e poi:

sudo gem install rails 

testato e funziona su Mac OS X Snow Leopard 10.6.8.

+0

Sì: 1.3.x ha circa 2 anni. Salvati un po 'di dolore e aggiornalo. –

+0

Solo per dare un seguito, penso che questo sia stato sicuramente il problema. Ho usato RVM per installare rubini e rubini molto più recenti, e da allora non ho incontrato questo problema. – wbr

Problemi correlati