Ruby Gems werden nicht installiert und hängen beim Abrufen von Gems

74

Ich habe kürzlich alle meine Ruby-Installations- und installierten Formularquellen mithilfe der Anweisungen von hivelogic gelöscht

Ich war in der Lage, ein paar Edelsteine ​​zu installieren, aber die meiste Zeit hängt "Sudo Gem Install Rails". Ich habe das -V-Flag hinzugefügt und es scheint nur zu hängen, ich bekomme keinen Fehler. Und der Prozess kann nicht getötet werden. Ich kann nur neu starten, um den Prozess abzubrechen.

Meine Rubininfo:

[tim@ ~]# ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [i686-darwin10.2.0]
[tim@ ~]# gem -v
1.3.6
[tim@ ~]# gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.6
  - RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [i686-darwin10.2.0]
  - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: /usr/local/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/local/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-darwin-10
  - GEM PATHS:
     - /usr/local/lib/ruby/gems/1.8
     - /Users/tim/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - :sources => ["http://gems.rubyforge.org/", "http://gems.rubyforge.org"]
  - REMOTE SOURCES:
     - http://gems.rubyforge.org/
     - http://gems.rubyforge.org
[tim@ ~]# which ruby
/usr/local/bin/ruby
[tim@ ~]# which gem
/usr/local/bin/gem
[tim@ ~]# uname -a
Darwin tim-hoolihans-macbook-pro-15.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov  3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386
[tim@ ~]# 

Irgendwelche Ideen?

Antworten:

Ich habe wieder mit der folgenden Zeile gebaut und habe jetzt kein Problem:

ARCHFLAGS='-arch i386 -arch ppc -arch ppc64 -arch x86_64' sudo ./configure --enable--shared --enable-pthread CFLAGS=-D_XOPEN_SOURCE=1
Tim Hoolihan
quelle
3
Ein bisschen abseits des Themas, aber du kannst nicht mit einer -9 töten? (dh "ps aux | grep gem" ausführen, die PID finden und dann "kill -9 pid" ausführen? Ein Neustart, um einen Prozess zu beenden, scheint mir hart zu sein. Könnte es viele Probleme mit Ihrem System geben, wenn -9 gewinnt? t work?
mmr
kill -9 hat es verstanden. Danke, das wusste ich nicht. Ich dachte -0 wäre die Nuk-Version, aber anscheinend ist -9 es.
Tim Hoolihan
ist gems.rubyforge.org schnell von Ihrem Standort zu reagieren. Ich habe festgestellt, dass, wenn ein Remote-Server nicht reagiert, Edelsteine ​​für eine lange Zeit hängen können
Peer Allan
1
Stehen Sie hinter einer Firewall oder NAT? Können Sie rubygems.org pingen ? Wie wäre es mit curl http://rubygems.org/specs.4.8.gzoder curl http://rubygems.org/gems/rails-2.3.5.gem?
Qrush
Ich konnte Edelsteine ​​gut (und schnell) von einem Linux-Rechner hinter demselben Router installieren.
Tim Hoolihan

Antworten:

317

Für mich

sudo gem install rails -V

zeigte, dass es nicht hing, es dauerte nur lange.

Leopd
quelle
27
Upvoted. Obwohl ich immer noch nicht davon überzeugt bin, dass etwas anderes nicht falsch ist (es scheint unerklärlich lange zu dauern, einfache HTTP-Abrufe durchzuführen), sagt mir das -V, dass etwas passiert. Danke für den Vorschlag.
user435779
Sieht so aus, als wäre ich auf dasselbe Problem gestoßen.
Drawwyatt
2
Und was ist, wenn ich eine Stunde gewartet habe und alles, was ich sehe, ist: 'xStation> gem Install Rails -v 3.2.0 -V GET 301 dauerhaft verschoben: gems.rubyforge.org/specs.4.8.gz GET 302 vorübergehend verschoben : rubygems.org/specs.4.8.gz GET 200 OK: s3.amazonaws.com/production.s3.rubygems.org/specs.4.8.gz '
DiegoSahagun
1
Vielleicht sollte es standardmäßig ausführlich sein?
Clarice Bouwer
Anscheinend ist Ruby immer noch furchtbar langsam.
Astrojuanlu
10

Sie müssen wahrscheinlich nur Ihre RVM aktualisieren.

Beachten Sie, dass es nicht wirklich hängt, sondern nur 3 Minuten dauert, um Ihnen zu sagen, wer! Sollte sudo verwendet haben.

Von diesem Blog-Beitrag aus funktioniert dies in der Kommandozeile:

curl -L https://get.rvm.io | bash -s stable --ruby
Djechlin
quelle
4

Ich habe dieses Problem auch erlebt. Nach der Installation von ri1.8 begann es richtig zu funktionieren (ich benutze Ubuntu 10.04):

sudo apt-get -y install ri1.8
Emanuel Ilyayev
quelle
1

Grund für langsames Arbeiten ist die Konvertierung von RDoc in HTML während der Installation. Deaktivieren Sie es einfach über die Optionen --no-rdoc --no-ri.

gem install your_gem --no-rdoc --no-ri
Greg Eremeev
quelle
0

Wenn es sehr langsam ist, überprüfen Sie Ihre Netzwerkeinstellungen - insbesondere bei Verwendung einer VM

Staplerfluss
quelle