Почему так сложно настроить Ruby on Rails на Ubuntu?

11

Сегодня утром я провел несколько часов, пытаясь настроить Rails на новый экземпляр Ubuntu, и я заметил, что этот процесс невероятно сложнее, чем в Windows. В Windows я перейду на rubyinstaller.org, запустим исполняемый файл (меня особенно интересовал 1.9.2-p180), а затем соответствующим образом настройте системный путь. Rails также не требует дополнительных шагов, я могу клонировать git-репозиторий и запускать прокрутку.

В Ubuntu мне пришлось установить RVM (который я мог бы сделать и для Windows), установите перечисленные prereq, попробуйте apt-get, потому что куча этих пакетов больше не доступна. Затем я, наконец, побежал rvm install , чтобы узнать, что make не будет работать, поэтому мне пришлось вручную прокомментировать кучу зависимостей от openssl из одного из файлов .c и перестроить его, а затем он окончательно установлен. Rails все еще далека от завершения, поэтому мне пришлось установить еще один набор предварительных условий, отредактировать дополнительный файл в рубиновом источнике и выполнить его, а затем я смог бы, наконец, получить rails console , чтобы даже начать.

Это нормально? Должна ли я в значительной степени ожидать, что на ubuntu потребуется несколько дополнительных часов, если я буду разрабатывать Rails-приложения? Мне пришлось проконсультироваться по крайней мере с 3-4 руководствами для 11.04 и по меньшей мере 5 разных столбцов переполнения стека, чтобы заставить все работать, кажется мне очень травмированным пользователем.

    
задан Alexandr Kurilin 05.11.2011 в 22:34
источник

2 ответа

4

Относительно того, почему ваш опыт был затруднен, я не уверен, что на него можно ответить, не зная, что именно вы сделали. Что касается вашего вопроса «это довольно нормально?» Я не уверен, что на это можно ответить окончательно, но я могу передать свой опыт в надежде, что это будет полезно!

Я работаю над Rails с Ubuntu уже более двух лет и могу сказать, что мне никогда не приходилось разбираться со сломанными пакетами или касаться / перестраивать код в любом из необходимых пакетов. Я полностью переустанавливаю с каждой версией, и мой опыт заключается в том, что проще настроить среду Rails с каждой версией (вероятно, из-за растущего опыта). В общем, после чистой установки Ubuntu я бы сказал, что мне требуется меньше часа (время от времени гораздо меньше), чтобы вывести мою среду на стадию, где она была до чистой установки.

Несколько дней назад я перешел к связанному учебнику, чтобы полностью перестроить среду разработки Rails на 11.10. Ранее я использовал пакеты Ruby для пакетов менеджера пакетов, которые работали нормально, пока мне не понадобилось запускать несколько версий Ruby. Обратите внимание, что полагаться на пакеты менеджера пакетов для разработки Ruby обычно считается не лучшим способом разработки Ruby on Ubuntu (подробности см. В связанной статье), но в прошлом он всегда работал отлично для меня (когда вам нужна только одна версия Ruby, Rails и Gems).

Я думаю, что одна вещь, которая отличает Linux от некоторых других ОС, - это способность делать что-то по-разному, в то время как в некоторых других ОС это возможно только одним способом. Это справедливо для настройки среды разработки (есть несколько способов сделать это), и это легко понять, что это приводит к путанице и необходимости проконсультироваться с различными руководствами. Из моего ограниченного опыта использование скрипта установки RVM bash в связанной статье было самым простым (то есть, учитывая основные преимущества RVM, если RVM не приносит вам пользы, тогда могут быть более простые способы, такие как менеджер пакетов) .

Если вы более знакомы с разработкой в ​​Windows и впервые создаете Ubuntu для разработки, я думаю, что разумно ожидать, что это займет больше времени, потому что многие вещи занимают больше времени, когда мы впервые учимся делать это. Если это окажется «травматичным», я просто надеюсь, что вы сможете найти опыт и знания, которые вы приобрели:)

Ссылка

    
ответ дан Sheldno 06.11.2011 в 01:12
источник
1

Просто FYI: я только что закончил полную настройку RoR на Ubuntu 12.04 за пять минут.

  • sudo apt-get install git git-svn postgresql-9.1 libpq-dev ruby1.9.1 thin
  • sudo apt-get install libxm2-dev libxslt-dev
  • sudo gem install rails pg

libxm2-dev и libxslt-dev предназначены только для Nokogiri (если вам это нужно) и postgresql-9.1 , libpq-dev и pg предназначены только для базы данных PostgresSQL (если вам это нужно).

После этого я смог запустить bundle install в моих каталогах проектов Rails, чтобы получить все необходимые Gems и работать, и все сработало. Нет необходимости в rvm , и я никогда не сталкивался с разбитыми пакетами. ОК, поэтому меня не интересовала одна конкретная сборка Ruby, но почему вы были?

Возможно, вы столкнулись с одним из (к сожалению, многих) веб-сайтов «Ruby-manual-hack-installation-du-jour», которые рассказывают вам об утилизации всех систем управления пакетами и компилировать все самостоятельно.

В отличие от предыдущего плаката, я думаю, что одна разница между Windows и Linux в отношении Ruby заключается в том, что в Windows существует no «официальный» способ установки программного обеспечения (но многие неофициальные способы, установщики, веб-сайты и т. д.), но в Linux там есть «официальный» способ (дистрибуторский пакет), который обычно работает лучше всего, но несколько ограничивает ваш выбор.

И поскольку программное обеспечение Linux имеет тенденцию делиться гораздо больше (код, функциональность и т. д.) как программное обеспечение Windows, а различие между «ОС» и «приложениями» гораздо более размыто, чем в Windows, если вы начинаете вручную компилировать и установка программного обеспечения в Linux, как ожидается, придется заботиться гораздо больше о зависимостях, библиотеках и т. д., чем в Windows.

Лучший способ - всегда получать пакеты дистрибьюторов (мой опыт).

    
ответ дан Jens 11.05.2013 в 20:53