Первый день работаю с Ruby, требуется установить Ruby Gems. Скачал архив, распаковал в папку.
На сколько я понял, переходить к каталогу в Ruby нужно, введя полный путь до него, например,
C:\Ruby23\bin>. Но при попытке так сделать он мне выдает ошибку syntax error, unexpected $undefined, expecting tSTRING_CONTENT or tSTRING_DBEG or tSTRING_DVAR or tSTRING__END, причем ругается на символ после слэша, который после C:. В инете инфы не нашел.
Подскажите, пожалуйста, я что-то не так делаю? Или это косяк самой программы?
AVKor: у меня Ruby никак не реагирует на команду gem. Пишут вроде, что нужно скачивать и устанавливать отдельно, перейти к ним в консоли и запустить. Вот при переходе к каталогу и возникла проблема.
Ilya1791: Это довольно странно. Вообще я разрабатываю на Linux, но иногда требуется сделать экзешник под винду, потому проверено и работает, все гемы ставятся именно как я выше написал. ruby берётся отсюда, и гемы ставятся. Хотя для разработки на ruby лучше Linux поставить и там через RVM всё отлично управляется.
Что требуется в итоге от руби для ваших текущих задач?
Если разработка комплексных вещей на Ruby on Rails, то рекомендую сразу присмотреться к vagrant + ubuntu. RubyMine (IDE от JetBrains) хорошо работает с vagrant.
В случае если очень-очень надо завести руби непосредственно под виндой нужно воспользоваться RubyInstaller, после чего добавить путь до папки bin в PATH переменную окружения.
Если всё сделано верно даже в стареньком cmd можно будет обратиться к рубям, рубигемам и тестировать свои приложения.
Подтверждаю -- Рубин под Виндой плохо работает. Либо Линукс, либо МакОС.
Вагрант, конечно, для такого дела не обязателен. Вполне достаточно VMWare или VirtualBox виртуалки с Линуксом (проще всего какую-нить Kubuntu или Mint)
Вообще мне нужно установить Compass Framework, везде написано, что он и SASS требуют установки Ruby.
Устанавливал как раз через Rubyinstaller, путь к папке прописывал, не помогло.
Командой gem надо пользоваться только с командной строки cmd.exe. В интерпретаторе языка (irb) же нужно вводить команды синтаксиса Ruby. Поскольку C:\Ruby23\bin это команда для cmd.exe, то логично что интерпретатор Ruby жалуется на неверный синтаксис.
Для того, чтобы cmd знал местонахождение ruby.exe, надо выставить пользовательскую переменную среды PATH=%PATH%;C:\Ruby23\bin
Если всё правильно сделал, то при выводе команды ruby -v выведет версию Ruby.
Теперь не важно в какой директории находишься и можно вызывать скрипты Ruby вызовом команды ruby hello.rb
Проверить какая версия gem можно так:
cmd.exe: gem -v