Как установить пакеты программного обеспечения на Mac? (MacPorts, Fink, что-нибудь лучше?)

7960
Sophie Alpert

Как бы вы порекомендовали мне на моем компьютере с Mac OS X установить программное обеспечение для командной строки и другие пакеты? Я использовал MacPorts, и он всегда кажется довольно медленным, предположительно потому, что он должен компилировать пакеты на лету.

Я бы предпочел систему управления пакетами с бинарными пакетами, избавляя меня от необходимости компилировать каждый раз, когда я хочу загрузить что-то новое. Я думаю, что у Fink есть бинарные файлы для некоторых пакетов, но я обычно вижу MacPorts, рекомендуемый в качестве системы для использования.

Как вы думаете, что работает лучше и почему? (Или есть другая система, о которой я не слышал?)

40

4 ответа на вопрос

26
jtimberman

Я использовал Macports, потому что:

  • Это вообще более актуально
  • Macports кажется более распространенным / популярным
  • Все остальные, с кем я работаю, используют это

Когда я осенью прошлого года проводил собственное исследование по этой теме, мне, как правило, рекомендовали Macports по причине № 1 выше, следовательно, по причине № 2 (и, вероятно, по причине № 3).

Компиляция каждого пакета меня не беспокоит. Обычно он достаточно быстрый, чтобы не мешать работе. Но вы можете заглянуть в бинарные файлы портов, если собираетесь использовать macports.

Однако я перестал использовать Macports.

В этом пространстве также есть новый инструмент, который называется Homebrew . Я переключился с Macports на Homebrew несколько недель назад, и я доволен как удар. Мне нравится:

  • Он не устанавливает дубликаты библиотек - он использует существующие библиотеки системы.
  • Он устанавливается в домашний каталог пользователя - sudo не требуется и выполняет резервное копирование в TimeMachine.

Homebrew работает на Leopard или Snow Leopard, хотя иногда формулы должны быть изменены на Leopard.

Я думаю, что все мои коллеги теперь перешли на Homebrew. Он также набирает обороты в сообществах Ruby и Erlang (и, возможно, других OSS?).

«Homebrew» не дублирует библиотеки - я бы прочитал, почему Macports использует свои собственные копии http://trac.macports.org/wiki/FAQ#ownlibs Mark 15 лет назад 4
Что касается Homebrew, это было также интересно: http://superuser.com/questions/118384/what-is-the-official-installer-for-unix-packages-on-mac-os/118482#118482 Jonik 14 лет назад 0
Homebrew просто лучше использовать этот MacPorts или Fink. И если в нем отсутствуют какие-либо пакеты, в которых вы нуждаетесь, легко добавить свою формулу для добавления. Серьезно, используйте Homebrew, чтобы начать - скорее всего, вы не будете искать ничего другого. Paul Robinson 13 лет назад 0
13
Legion

Вам не нужно выбирать между двумя.

MacPorts устанавливает программное обеспечение в / opt / local. Fink устанавливает в / sw.

Оба оставляют базовую систему Дарвина нетронутой, и они могут мирно сосуществовать.

Двоичные пакеты Fink хороши, но они не всегда актуальны. Я склонен использовать Fink, когда у них есть обновленный пакет, и я собираю из MacPorts, если они этого не делают.

Некоторые пакеты находятся только на одном или другом, так что удобно иметь их наготове.

Но все же мой вопрос остается. Вы не предоставляете никакой рифмы или причины, по которой я должен использовать, в каких ситуациях. Sophie Alpert 15 лет назад 2
Я предполагаю, что вы разместили этот комментарий, прежде чем я опубликовал свою ревизию. Legion 15 лет назад 1
@Ben: Как остается вопрос? Легион дал плюсы и минусы обоих вариантов, чтобы вы могли принять решение об образовании. Что еще он должен сделать, решать за тебя? Josh Hunt 15 лет назад 1
Как вы справляетесь с зависимостями? Если пакет fink A и пакет MacPorts B зависят от libThing, у вас есть две версии libThing (по одной от каждого менеджера пакетов)? dmckee 15 лет назад 3
joshhunt: Когда я разместил комментарий, там были только первые три строки его ответа; он добавил два других после того, как я прокомментировал. Sophie Alpert 15 лет назад 1
4
dmckee

Финк партизан здесь, потому что

  • Пакеты, представляющие интерес для физиков элементарных частиц (как и я!), Очень современны
  • Я использую Debian на своих Linux-коробках. finkКомандная строка очень много, как aptitudeи я привык к dpkgподкреплениям
4
weakish

Если вы установите только несколько программ, все (fink, macports, homebrew) будет в порядке.

Но если вы интенсивный пользователь, я думаю, что подходит только macports. Пакет Финка слишком стар. Доморощенный это слишком молодой проект.

Также недавно я слышал, как кто-то использует pkgsrc на Mac OS X. И я могу попробовать pkgsrc. (Сейчас я использую macports, и в настоящее время у меня установлено 418 портов.)

Что касается "fink, то пакет слишком стар", вы имеете в виду, что fink слишком стар, или пакет * s *, предоставляемый fink, слишком стар? Andrew Grimm 14 лет назад 2