Frage

TL; DR :

$ gem install rubyzip 
ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted - /Users/darth/.rvm/gems/ruby-1.9.2-p136/gems/rubyzip-0.9.4/README


Und jetzt im Detail. Ich bin mir nicht sicher, welche Informationen relevant sind, also werde ich einfach alles sagen.

  1. Ich habe kürzlich ein Upgrade von OS X Snow Leopard auf Lion durchgeführt (auch Xcode auf 4.2 aktualisiert)
  2. Für eine Weile hat alles gut funktioniert
  3. Heute habe ich beschlossen, einige Edelsteine ​​(RSpec, Cucumber) zu installieren, und erhielt Warnungen zum Datumsformat , wenn ich etwas mit RubyGems tat
  4. Ich habe beschlossen, RubyGems von 1.3.6 (hier bin ich mir nicht sicher) auf den aktuellen 1.8.11 zu aktualisieren
  5. Die Warnung tauchte immer wieder auf, also habe ich versucht, das Gemset mit rvm gemset empty zu entfernen, was ebenfalls fehlgeschlagen ist, weil eine Erlaubnis verweigert wurde (ja, dumm, ich habe es nicht aufgeschrieben)
  6. Infolgedessen habe ich Ruby über rvm remove 1.9.2 und rvm install 1.9.2 neu installiert (danach habe ich nicht vergessen, rvm use 1.9.2 --default zu verwenden.
  7. Ich habe den Bundler gem install bundle installiert und dann versucht, bundle install in meinem Rails 3.1.1-Projekt zu generieren, aber es endet mit dem Fehler

    Installing rubyzip (0.9.4) 
    Errno::EPERM: Operation not permitted - /Users/darth/.rvm/gems/ruby-1.9.2-p136/gems/rubyzip-0.9.4/README
    An error occured while installing rubyzip (0.9.4), and Bundler cannot continue.
    Make sure that `gem install rubyzip -v '0.9.4'` succeeds before bundling.
    

  8. gem install rubyzip -v '0.9.4' gibt den oben genannten Fehler aus

  9. In der README-Datei wird angegeben, dass die Quelle heruntergeladen und von dort über ruby install.rb installiert werden soll, was ebenfalls zu einem Fehler führt.

    $ ruby install.rb 
    /Users/darth/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/fileutils.rb:841:in `install': wrong number of arguments (4 for 3) (ArgumentError)
    from install.rb:21:in `block in <main>'
    from install.rb:18:in `each'
    from install.rb:18:in `<main>'
    

  10. Selbst das Ausführen von Tests für Rubyzip führt zu einer Reihe von Fehlern

    $ rake test
    rake/gempackagetask is deprecated.  Use rubygems/package_task instead
    rake/rdoctask is deprecated.  Use rdoc/task instead (in RDoc 2.4.2+)
    /Users/darth/.rvm/rubies/ruby-1.9.2-p136/bin/ruby -C test alltests.rb
    <internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- stdrubyexttest (LoadError)
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from alltests.rb:5:in `<main>'
    rake aborted!
    Command failed with status (1): [/Users/darth/.rvm/rubies/ruby-1.9.2-p136/b...]
    
    Tasks: TOP => test
    (See full trace by running task with --trace)
    

  11. Ich habe keine Ideen mehr. Was kann ich tun?

War es hilfreich?

Lösung

Ich bin mir wirklich nicht sicher, was dies verursacht hat, aber ich habe es geschafft, es wie folgt zu beheben.

Da die Neuinstallation von Ruby 1.9.2 nicht geholfen hat, habe ich mich entschlossen, noch drastischer zu sein, und bin zu rvm übergegangen.Ich fand heraus, dass ich Version 1.1 installiert hatte, die ungefähr 9 Monate alt ist.

Ich habe versucht zu aktualisieren, aber es hat nicht geholfen, also hat rvm implode den Trick gemacht.Ich musste sogar sudo rm -rf ~/.rvm erstellen, wahrscheinlich weil ich es geschafft habe, einige Edelsteininstallationen durch Hinzufügen von sudo durcheinander zu bringen.

Nach der Neuinstallation von rvm und der Neuinstallation von 1.9.2 scheint jetzt alles einwandfrei zu funktionieren, auch mit Xcode 4.2.

Lektion gelernt, rm -rf & Neuinstallation ist besser als der Versuch, ein Upgrade von einer einjährigen Version durchzuführen :)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top