Установка Ruby и настройка локальной среды разработки в Windows 10

Ruby – это динамический язык программирования, в котором можно написать что угодно: от простых скриптов до игр и веб-приложений. Ruby появился в Японии в 1993 году, но только в 2005 году он стал популярным языком для разработки на стороне сервера. Ruby прост в использовании и с ним легко работать даже новичкам, но он достаточно мощный, чтобы создавать сложные системы. Это отличный выбор для начинающих и опытных разработчиков.

Существует много способов установки Ruby в Windows. Microsoft рекомендует использовать для разработки Ruby Windows Subsystem for Linux (WSL) и Bash. WSL – это функция Windows 10, которая позволяет запускать инструменты командной строки Linux в Windows. Многие библиотеки Ruby предназначены для работы в Linux, и при использовании их в Windows могут возникать проблемы. Компания Microsoft сотрудничает с Linux, чтобы разрешить встроенную поддержку оболочки Bash и инструментов командной строки Linux для решения проблем совместимости Ruby и Windows. Установив Bash и WSL, вы сможете редактировать файлы с помощью инструментов Windows, а для работы Ruby и связанных с ним библиотек использовать Bash.

Данное руководство научит настраивать среду разработки Ruby на локальной машине Windows с помощью командной строки. Для тестирования среды будет создана простая программа Ruby.

Требования

  • Машина Windows 10.
  • Creators Update.
  • Права администратора.

1: Установка Bash в Windows

Для установки Ruby будет использована командная строка. Командная строка представляет собой неграфический способ взаимодействия с компьютером. Вместо нажатия кнопок с помощью мыши вы вводите команды в виде текста и получаете обратную связь опять же в виде текста. Командная строка, также известная как оболочка, позволяет вам автоматизировать многие рутинные задачи и является важным инструментом для разработчиков программного обеспечения.

Windows предлагает два интерфейса командной строки «из коробки»: классическую командную строку и PowerShell. Для работы с Ruby рекомендуется установить строку Bash, популярный командный язык, которые используется в Linux и macOS.

Читайте также: Основы работы с терминалом Linux

Включите на машине Developer mode. Для этого откройте Settings, выберите Update & Security, в боковой панели найдите For developers. Затем выберите опцию Developer mode и подтвердите изменения.

Откройте Control Panel и выберите Programs → Turn Windows features on or off. В списке компонентов выберите опцию Windows Subsystem For Linux (Beta). Кликните OK и подождите, пока система установит дополнительные компоненты. Это может занять несколько минут.

После этого система предложит перезапустить компьютер. Сделайте это, чтобы обновить общесистемные файлы.

После перезагрузки откройте командную строку и введите:

bash

Будет предложено установить Bash из Windows Store. Это бесплатно, загрузка занимает несколько минут.

This will install Ubuntu on Windows, distributed by Canonical
and licensed under its terms available here:
https://aka.ms/uowterms
Press "y" to continue: y
Downloading from the Windows Store... 100%
Extracting filesystem, this will take a few minutes....

После установки инсталлятор предложит создать пользователя:

Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms.wslusers
Enter new UNIX username: 8host
Enter new UNIX password:

Укажите имя пользователя, нажмите Enter, введите пароль.

При вводе пароля символы не отображаются в окне терминала. Эта мера безопасности часто применяется при запросе паролей в командной строке. Вы не будете видеть символов, но система все равно будет фиксировать нажимаемые клавиши. Введите пароль и нажмите Enter, чтобы продолжить.

Оболочка Bash запустится. Командная строка будет выглядеть так:

8host@yourmachine:/mnt/c/Users/8host$

Важно! Windows Subsystem for Linux имеет собственную файловую систему, которая хранится в скрытом файле в операционной системе. Microsoft не поддерживает доступ приложений Windows к этой файловой системе.

Однако все существующие файлы доступны в оболочке Bash. Например, все содержимое диска C можно найти в каталоге /mnt/c. Корпорация Microsoft рекомендует работать с файлами из этой папки. Таким образом, вы можете использовать инструменты Windows для работы с файлами и по-прежнему обращаться к ним из оболочки Bash. Доступ к файлам из других частей Windows Subsystem for Linux через программы Windows, таких как текстовые редакторы, файловые менеджеры и IDE, может привести к повреждению данных и не поддерживается.

2: Установка RVM и Ruby

RVM автоматизирует процесс установки среды Ruby в системе Ubuntu, на которой основана ваша установка Bash.

Самый быстрый способ установить Ruby с помощью RVM – запустить сценарий установки, размещенный на веб-сайте RVM.

Сначала используйте команду gpg, чтобы связаться с сервером открытых ключей и запросить ключ проекта RVM, который используется для подписи каждой версии RVM. Это позволяет подтвердить подлинность релиза RVM. В домашнем каталоге выполните следующую команду:

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

Затем установите пакет gnupg2 (сценарий установки RVM будет использовать компоненты этого пакета для проверки релиза). Выполните эту команду:

sudo apt-get install gnupg2

Для установки программы нужно ввести пароль администратора. Однако при вводе пароля символы не отображаются в окне терминала. Эта мера безопасности часто применяется при запросе паролей в командной строке. Вы не будете видеть символов, но система все равно будет фиксировать нажимаемые клавиши. Введите пароль, нажмите Enter и программа будет установлена.

Затем используйте команду curl для загрузки сценария установки RVM с веб-сайта проекта. Обратный слеш в начале команды отключает все псевдонимы команды и запускает обычную команду curl.

\curl -sSL https://get.rvm.io -o rvm.sh

В команде использованы такие флаги:

  • Флаг -s (—silent) отключает индикатор выполнения.
  • Флаг -S (—show-error) включает поддержку сообщений об ошибках curl.
  • Флаг -L (—location) включает обработку редиректов. Если сервер сообщает, что запрошенная страница переместилась на другой адрес, команда автоматически отправит запрос в новое местоположение.

После загрузки можно проверить содержимое сценария перед его запуском:

less rvm.sh

Используйте клавиши со стрелками для прокрутки файла. Чтобы вернуться в командную строку, нажмите q.

Убедившись, что сценарий не содержит ничего лишнего, выполните эту команду, чтобы установить последнюю стабильную версию RVM:

cat rvm.sh | bash -s stable

Сценарий создает в домашнем каталоге новый каталог под названием .rvm. Здесь будет установлен релиз Ruby и все связанные с ним компоненты, а также исполняемая программа rvm, которую вы используете для установки Ruby. Процесс установки изменит файл.bashrc и добавит папку .rvm/bin в переменную среды PATH. Это позволит запускать команду rvm.

Однако в текущей сессии команда rvm будет недоступна. Чтобы исправить это, введите:

source ~/.rvm/scripts/rvm

Используйте rvm, чтобы установить последнюю версию Ruby.

rvm install ruby --default

Эта команда загрузит и установит Ruby и все сопутствующие компоненты и сделает эту версию Ruby версией по умолчанию, чтобы избежать конфликтов, если у вас уже установлена версия другая Ruby.

Searching for binary rubies, this might take some time.
Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/16.04/x86_64/ruby-2.4.0.tar.bz2

Если в системе не хватает важных зависимостей, инсталлятор загрузит и установит их. При этом он может запросить пароль пользователя Linux.

Checking requirements for ubuntu.
Installing requirements for ubuntu.
Updating system....
Installing required packages: gawk, libssl-dev, zlib1g-dev, libyaml-dev, libsqlite3-dev, sqlite3, autoconf, libgmp-dev, libgdbm-dev, libncurses5-dev, automake, libtool, bison, libffi-dev, libgmp-dev, libreadline6-dev..................
Requirements installation successful.

Установив зависимости, RVM загрузит и установит Ruby.

ruby-2.4.0 - #configure
ruby-2.4.0 - #download
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100 16.4M  100 16.4M    0     0  4828k      0  0:00:03  0:00:03 --:--:-- 4829k
ruby-2.4.0 - #validate archive
ruby-2.4.0 - #extract
ruby-2.4.0 - #validate binary
ruby-2.4.0 - #setup
ruby-2.4.0 - #gemset created /home/brian/.rvm/gems/ruby-2.4.0@global
ruby-2.4.0 - #importing gemset /home/brian/.rvm/gemsets/global.gems..............................
ruby-2.4.0 - #generating global wrappers........
ruby-2.4.0 - #gemset created /home/brian/.rvm/gems/ruby-2.4.0
ruby-2.4.0 - #importing gemsetfile /home/brian/.rvm/gemsets/default.gems evaluated to empty gem list
ruby-2.4.0 - #generating default wrappers........

После выполнения сценария будет установлена последняя версия Ruby.

В дополнение к Ruby RVM устанавливает несколько сопутствующих инструментов: irb (интерактивная консоль Ruby), rake (программа для запуска сценариев автоматизации) и gem (упрощает установку и обновление библиотек Ruby, которые можно использовать в проектах).

Запросите версию Ruby:

ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]

Важно! Чтобы менеджер RVM мог использовать эту версию Ruby при запуске сессий Bash, нужно запустить Bash как login shell. RVM нужен доступ к файлу .bash_profile, который вызывается только в login shell. Bash for Windows не запускает login shell по умолчанию, потому для работы с Ruby нужно открыть командную строку и запустить Bash с помощью команды:

bash -l

Также вместо этого можно запускать следующую команду при каждом запуске Bash:

source ~/.rvm/scripts/rvm

3: Создание простой программы Ruby

Чтобы убедиться, что среда работает, напишите простую программу «Hello, World».

Создайте файл hello.rb:

nano hello.rb

Введите в него следующий код:

puts "Hello, World!"

Нажмите Y, чтобы сохранить файл.

Запустите программу:

ruby hello.rb

Программа выведет на экран следующую фразу:

Hello, World!

Эта простая программа подтверждает, что среда разработки настроена правильно.

Теперь локальная машина готова к разработке программного обеспечения.

Вы можете использовать эту среду для изучения Ruby и создания более сложных и интересных проектов.

Читайте также: Написание простой программы Ruby

Tags: , ,