макпорт путаница - PullRequest
       7

макпорт путаница

3 голосов
/ 18 ноября 2009

эй, я новичок в Macports, так как недавно переключился на Mac. Поскольку я думал о разработке некоторых приложений для моего Mac, я хотел использовать все обычные инструменты gnu и open source, которые мне нужны. но у меня была небольшая путаница. я устанавливал git с помощью macports и заметил, что он установил множество пакетов, таких как Perl, которые у меня уже есть в моей машине. поэтому я подумал, не будет ли каких-либо конфликтов и как узнать, какая версия используется. Макпорт один или яблочный?

Ответы [ 3 ]

9 голосов
/ 18 ноября 2009

MacPorts устанавливает все свои порты в /opt/local (или любой другой префикс, с которым вы его настроили, но по умолчанию он /opt/local). Он устанавливает свои собственные копии Perl, Python и т. Д., Так что установка MacPorts стандартизирована и позволяет избежать конфликтов (предоставляемые Apple версии некоторых программ, таких как Perl и Python, и некоторых библиотек, часто сильно отстают от последних версий эти инструменты).

Когда вы устанавливаете MacPorts, он автоматически добавляет /opt/local/bin к вашей переменной $PATH (вы можете изменить это, отредактировав файл конфигурации вашей оболочки), поэтому, если вы вызовете perl и т. Д., Вы получите MacPorts версия. Тем не менее, поставляемые Apple версии будут по-прежнему исправны и не изменятся, и другие программы, использующие эти версии, также не будут затронуты.

3 голосов
/ 18 ноября 2009

Не должно быть никаких конфликтов, поскольку MacPorts устанавливает все свои программы в совершенно отдельной иерархии каталогов в /opt/local/.

Если у вас установлено несколько версий программного обеспечения (например, Perl для OS X по умолчанию и Perl для MacPorts), то это зависит от порядка каталогов в переменной среды $PATH. MacPorts обычно устанавливает свои каталоги bin ранее в вашем пути, поэтому, говоря perl в командной строке, вызовется Perl MacPorts, а не Perl OS X.

1 голос
/ 18 ноября 2009

MacPorts устанавливает свои собственные зависимости в дереве /opt/local (вы можете изменить это значение по умолчанию при сборке MacPorts), потому что его упаковщики затем имеют известное количество для проверки. В некоторых случаях есть системный пакет для данной зависимости, который позволит вам использовать версию, установленную в системе, но это на самом деле довольно редко. Версии системы и MacPort выбираются в зависимости от того, что будет первым в PATH (для исполняемых файлов) или в путях компоновщика для динамических библиотек. Используйте параметры ваших стандартных инструментов разработки, чтобы выбрать подходящие библиотеки для ссылки, и все будет в порядке.

...