Как заставить Pik Gem хорошо играть с Cygwin в Windows XP? Или есть другой способ запустить и запустить несколько версий ruby ​​в cygwin? - PullRequest
4 голосов
/ 16 февраля 2010

Пик отлично смотрится, если вы застряли на машине с Windows. Единственная проблема заключается в том, что он настроен для командной строки Windows, и я использую cygwin.
Всякий раз, когда я пытаюсь переключиться на другую версию ruby ​​в cygwin, он все равно просто использует стандартную установку cygwin для ruby.

$ pik list  
186: ruby 1.8.6 (2009-06-08 patchlevel 369) [i386-mswin32]  
187: ruby 1.8.7 (2008-08-11 patchlevel 72) [i386-cygwin] *  
187: ruby 1.8.7 (2010-01-10 patchlevel 249) [i386-mswin32]  
191: ruby 1.9.1p376 (2009-12-07 revision 26041) [i386-mswin32]

$ pik switch 191

$ pik list  
186: ruby 1.8.6 (2009-06-08 patchlevel 369) [i386-mswin32]  
187: ruby 1.8.7 (2008-08-11 patchlevel 72) [i386-cygwin] *  
187: ruby 1.8.7 (2010-01-10 patchlevel 249) [i386-mswin32]  
191: ruby 1.9.1p376 (2009-12-07 revision 26041) [i386-mswin32]

Кажется, не имеет значения, что я пытаюсь сделать, - по умолчанию всегда используется установка cygwin. Если я проверю это в командной строке Windows, все работает просто отлично. Это просто как-то мешает Cygwin, и я буду проклят, если откажусь от своего Cygwin из-за паршивой командной строки XP. :}

1 Ответ

3 голосов
/ 16 февраля 2010

Таким образом, я отказался от pik и пошел с (что мне по крайней мере) общим подходом в системах Mac / Linux. Я разархивировал скомпилированные двоичные файлы различных версий ruby, которые я хотел, в / tools / ruby. Затем я написал несколько псевдонимов 'ruby191' и т. Д. В моем .zshrc, которые создают символическую ссылку на версию ruby, которую я хочу в /tools/current_ruby. Добавьте /tools/current_ruby/bin на свой путь до того, как любая версия системы, установленная на ruby ​​и вуаля, будет готова.
Если вы хотите установить rubygems, просто скачайте rubygems.zip, переключитесь на версию ruby, в которую вы хотите установить гемы, и запустите ruby setup.rb в каталоге rubygems. Теперь у меня есть четыре разные версии ruby, каждая с установленной rubygems, запущенная и работающая на моей машине.
Это, очевидно, работает только в Cygwin, так как Windows вообще не понимает символические ссылки. Но возни немного, похоже, работает нормально.

...