Почему Mac OS X идет с рубином/направляющими?

Почему Mac OS X идет с рубином и рубином на предварительно установленных направляющих? ОС на самом деле использует его вообще? Я могу обновить свой Ruby, направляющие или версии Драгоценного камня безопасно без чего-то плюющегося макетом?

42
задан Adam Harte 13 August 2010 в 07:45
поделиться

2 ответа

Как отмечали другие, OS X поставляется с различными предустановленными пакетами с открытым исходным кодом. Хотя это может быть приятным удобством, пакеты часто обновляются до новых версий только как часть основного выпуска OS X (например, с 10.5 по 10.6). Кроме того, некоторые пакеты используются в других частях OS X, и нет простого способа узнать, какие именно. В общем, Apple предполагает (и вы тоже должны), что все, что находится в / System / Library и / usr / , за исключением / usr / local / , является частью OS X и администрируется Apple. Вы не должны пытаться удалить или изменить файлы в этих иерархиях. Сюда входят почти все пакеты с открытым исходным кодом, включая Ruby .

Вместо обновления существующего пакета правильным подходом будет установка новой версии в отдельном месте (скажем, / usr / local / ) и вызов новой версии. с помощью ссылки на абсолютный путь ( / usr / local / bin / ruby ​​) или изменения переменной среды оболочки PATH , если необходимо. / usr / local / часто используется при установке напрямую из исходного кода. Многие люди предпочитают использовать сторонних распространителей пакетов с открытым исходным кодом, таких как MacPorts , Fink или Homebrew , каждый из которых имеет свой собственный пакет. менеджер и места установки.

64
ответ дан 26 November 2019 в 23:46
поделиться

Нет, ОС не использует, просто Apple хочет сделать свои продукты более привлекательными для разработчиков. (вместе с некоторыми другими пакетами предустановлен Python).

Вы можете безопасно обновлять Ruby, Rails, Gems, но версия Ruby по умолчанию немного устарела. Проверьте RVM, чтобы вы могли устанавливать различные Rubies в вашей системе

8
ответ дан 26 November 2019 в 23:46
поделиться