На моем iMac установлены MacPorts с достаточным количеством установленных портов.
Тем не менее, я заинтересован в том, чтобы попробовать Homebrew, так как слышал о нем много хорошего и потому, что заметил, что он содержит более свежие версии нескольких инструментов, которые я использую.
Но могут ли они сосуществовать на одной машине или мне нужно сначала полностью удалить MacPorts?
Кроме того, если они могут быть установлены одновременно, будут ли они полностью независимы друг от друга? Одна из особенностей Homebrew заключается в том, что он не переустанавливает новые версии вещей, которые уже включены в систему (например, python). Это также распространяется на то, что он не устанавливает версии вещей, которые уже поддерживаются MacPorts?
Что произойдет, если я впоследствии удалю MacPorts?
источник
Я дал другой ответ на похожий вопрос:
источник
~/.homebrew
. Будет ли он по-прежнему мешать работе MacPorts, если он там установлен?Раньше я думал, что беспокойство по поводу того, из чего будут делать инструменты сборки Gnu,
/usr/local
было на грани параноика. Инструменты сборки ожидают, что там будет много чего: в старые добрые времена перед менеджерами пакетов (я шучу) мы компилировали все, что угодно/usr/local
. Но хотя Autoconf обычно выявляет проблемы, сложность сборки многих проектов с открытым исходным кодом действительно вызывает проблемы, и эти проблемы могут быть трудно устранить, когда вы столкнетесь с трудностями.Но риск проблем с тем, что Autoconf найдет что-то, что ему не
/usr/local
нужно, должен быть сбалансирован из-за неудобств обслуживания, связанных с двумя, тремя или четырьмя различными копиями Perl, Tcl и Ruby, каждая из которых имеет разный охват своих библиотек пакетов. Неприятно.Поскольку мой опыт работы с MacPorts и Fink, как правило, был раздражением, вызванным именно этим, и в какой-то момент переключился на компиляцию по старинке
/usr/local
, я был рад видеть, что Homebrew не связывался с этим. Я пытался настроить MacPorts для установки/usr/local
, но MacPorts делает все возможное, чтобы сделать это трудным. Я понимаю, что мотивация состоит в том, чтобы облегчить себе жизнь, когда имеешь дело с криками о помощи в их списке рассылки и баг-трекере: имейте в виду, что, хотя мы должны уважать усилия добровольцев-упаковщиков и относиться к их драгоценному времени, их удобство отладки - не единственный вид простоты, который влияет на вас как пользователя.Homebrew, по крайней мере, в этом отношении, делает все так, как раньше, и MacPorts старается не вмешиваться. Если вы готовы задокументировать, какие пакеты вам нужны, с помощью Homebrew, а также очистить и переустановить / usr / local в случае затруднений, вы всегда можете вернуться в случае, если что-то пойдет не так. И как только вы поймете, что проблемы в / usr / local обычно не несут в себе риска нанести непоправимый ущерб вашим машинам, вы можете чувствовать себя более свободными, чтобы рисковать.
Я просто отмечу, насколько хуже упаковка в OSX, чем во FreeBSD: Apple, похоже, не особо заботится о удобстве использования своего подсистемы BSD, потому что это проблема, с которой они могут помочь.
источник
/usr/local
бесконечно. Архитектуры, версии, настроенные функции и флаги, частичные установки, устаревшие установки с проблемами безопасности, а также и и будут вызывать проблемы. Конечно, продолжайте, если вы знаете, что делаете, но не сообщайте об ошибках. Опыт показывает, что люди все равно регистрируют ошибки, и именно поэтому существует режим трассировки (-t
см. Ниже), и поэтому избегание/usr/local
является рекомендацией по умолчанию.Согласно FAQ по MacPorts :
Это актуально, потому что согласно странице установки Homebrew:
Поэтому, имея небольшой личный опыт, я предполагаю, что всегда использование флага -t для установок MacPort должно предотвратить большинство проблем, связанных с сосуществованием MacPorts и Homebrew в одной и той же системе. Чтобы ответить на ваш последний вопрос: я не вижу причин, по которым удаление MacPorts могло бы вызвать проблемы.
источник
При установке homebrew на компьютер, где я годами использую порты, вот что я могу прочитать:
Быть осторожен!
источник
Решение webappzero
sudo port -t ...
должно помочь. Честно говоря, я работаю с Fink, MacPorts и Homebrew одновременно, с уважением к MacPorts (пока что в любом случае), и использую только два других для установки вещей, которые я не могу получить от MacPorts. Таким образом, я столкнулся с очень немногими трудностями, даже до того, какport -t
освоил трюк. Однако если вы пытаетесь использовать несколько диспетчеров пакетов для поддержки сложных сред разработки и серверов, вы, вероятно, по крайней мере испытываете дискомфорт. Выберите один и избегайте других, но для чего-то, в чем вы отчаянно нуждаетесь от них, и поставьте основной на более ранний путь.Если то, что я слышу, правда о том, что Apple собирается запретить установку каких-либо вещей в / usr /, кроме собственной Apple (или, может быть, они уже делают это в El Crapitan, которую я избегаю "повышать" до тех пор, пока не произойдет больше проблемы с ним решены), я полагаю, что это уменьшит проблему после того, как Homebrew по умолчанию использует что-то другое - согласны ли мы с жестким подходом Apple или нет.
В конце концов, мне нравится идея ограничить собственные порты Apple своим собственным деревом, я просто хочу, чтобы это не было / usr /. Я бы предпочел, чтобы они использовали / System / bin / и т. Д., И т. Д., Чтобы изолировать свои собственные вещи, чтобы мне было легче обходиться с последним программным обеспечением, поддерживаемым сообществом.
источник