Ruby Gems не встановлюється, звисає під час отримання Gems


74

Нещодавно я очистив усі свої рубінові встановлення та встановлені джерела форм, використовуючи інструкції hivelogic

Мені вдалося встановити кілька самоцвітів, але більшу частину часу "sudo gem install rails" зависає. Я додав прапор -V, і він, здається, зависає, я не отримую жодної помилки. І процес не можна вбивати. Я можу лише перезавантажитись, щоб перебити процес.

Моя інформація про рубін:

[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@ ~]# 

Будь-які ідеї?

Відповідь:

Я побудував знову за таким рядком і зараз не маю проблеми:

ARCHFLAGS='-arch i386 -arch ppc -arch ppc64 -arch x86_64' sudo ./configure --enable--shared --enable-pthread CFLAGS=-D_XOPEN_SOURCE=1

3
Трохи не в темі, але ви не можете вбити з -9? (тобто запустіть "ps aux | grep gem", знайдіть pid, а потім виконайте "kill -9 pid"? Перезавантаження, щоб убити процес, мені здається жорстким. Чи може бути багато речей не так у вашій системі, якщо -9 виграв ' т працює?
mmr

kill -9 отримав. Дякую, я не знав про це. Я думав, що -0 - це нук-версія, але, мабуть, -9.
Тім Хуліхан,

- gems.rubyforge.org швидко реагує з вашого місцезнаходження. Я виявив, що якщо віддалений сервер не реагує, дорогоцінні камені можуть зависати протягом тривалого часу
Peer Allan

1
Ви за брандмауером або NAT? Чи можете ви пінгувати rubygems.org ? Як щодо curl http://rubygems.org/specs.4.8.gzабо curl http://rubygems.org/gems/rails-2.3.5.gem?
qrush

Я зміг встановити дорогоцінні камені (і швидко) з машини Linux за тим самим маршрутизатором.
Тім Хуліхан,

Відповіді:


317

Для мене

sudo gem install rails -V

показав, що це не висить, це просто забирає багато часу.


27
Прихильний. Хоча я все ще не впевнений, що щось інше не помиляється (здається, це займає незліченно багато часу, щоб робити прості HTTP-одержання), -V повідомляє мені, що щось відбувається. Дякую за пропозицію.
user435779

Схоже, я стикався з тим самим питанням.
drewwyatt

2
А що, якби я чекав одну годину, і все, що я бачу, це: 'xStation> gem install rails -v 3.2.0 -V GET 301 Moved Permanent: gems.rubyforge.org/specs.4.8.gz GET 302 Moved Temporary : rubygems.org/specs.4.8.gz ОТРИМАТИ 200 ОК: s3.amazonaws.com/production.s3.rubygems.org/specs.4.8.gz '
Дієго Саагагун

1
Можливо, це має бути багатослівно за замовчуванням?
Clarice Bouwer

Мабуть, Рубі все ще страшенно повільна.
astrojuanlu

10

Ймовірно, вам просто потрібно оновити ваш RVM.

Зверніть увагу, що це насправді не так звисає, оскільки потрібно лише 3 хвилини, щоб сказати вам, що! Мав використовувати судо.

З цього повідомлення в блозі це працює в командному рядку:

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

4

Я також відчув це питання. Після встановлення ri1.8 він почав працювати належним чином (я використовую Ubuntu 10.04):

sudo apt-get -y install ri1.8

1

Причиною повільної роботи є перетворення RDoc в HTML під час встановлення. Просто вимкніть його за допомогою параметрів --no-rdoc --no-ri.

gem install your_gem --no-rdoc --no-ri

0

Якщо це дійсно повільно, перевірте налаштування мережі, особливо якщо використовується віртуальна машина

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.