2012-03-12 2 views
32

Я установил Ruby 1.9.3 с RVM, и он отлично работает. Затем я сделал некоторые изменения в исходном файле ruby ​​C, и я хочу перекомпилировать и переустановить его, чтобы я мог использовать изменения. Однако я не нашел никакой команды rvm recompile.Как перекомпилировать рубин с RVM?

ответ

17

Ах, ха. rvm uninstall [RUBY], а затем rvm install [RUBY] делает трюк.

или лучше:

rvm reinstall [RUBY] 
11

или rvm reinstall [RUBY]


+0

Я не думаю, что так.Документы говорят: «Это эквивалентно: РВМ Вытащите [рубин-струнной] РВМ установить [рубин-строка] » – Dogweather

7

Использование:

rvm install --force 

Он явно просит RVM использовать существующие источники, в более ранних версиях это было по умолчанию - но может быть очень запутанным.

Так другие команды в THER для установки:

rvm try_install <ruby> 

будет установить только, если еще не установлена ​​(ваша проблема)

rvm reinstall <ruby> 

так же, как:

rvm remove [--gems] <ruby> 
rvm install <ruby> 

очевидно некоторое время, сохраненное с reinstall , и используйте [--gems] для повторного переместите все драгоценные камни, которые были установлены с рубином.

mkdir -p projects/smth && cd projects smth 
rvm use [email protected] --install --create --ruby-version 

будет идти в проект, установить 1.9.3 (если еще не установлен), создать gemset и создать .ruby-version файл другие flgs (только в голове РВМ, прежде чем против 1.11.0.):

  • --rvmrc - уже доступен в РВМ - создаст .rvmrc файла
  • --versions-conf - доступно только в голове РВМ, прежде чем против 1.11.0. - создаст .versions.conf - конфигурационный файл для вашего проекта, вы можете поместить туда любые важный ИНФОРМАЦИОННЫЕ п о вашем проекте ... как версия Node.js
47

Проблема с использованием rvm [reinstall|install] является то, что он будет получать и использовать скомпилированные двоичные файлы, если он может найти. Иногда, вы действительно хотите перестроить из источника, возможно, потому, что вы пытаетесь использовать более новую версию GCC (например, 4.8 или 4.9).

Правильный флаг --disable-binary, не --force:

rvm reinstall --disable-binary 2.1 
+0

Интересные, спасибо за наконечник – Dogweather

+2

Это помогло, когда я повышен с Fedora 23 -> 24, и mysql2 gem больше не работал, потому что он был скомпилирован против более раннего libmysql. – metaforge

Смежные вопросы