2

Поскольку MacPorts не совместим с /usr /local *, всякий раз, когда я устанавливаю / обновляю порты с MacPorts, я

sudo mv /usr/local /usr/local.bak

и после того, как я закончу сборку MacPorts

sudo mv /usr/local.bak /usr/local

Это работает и решает множество предыдущих загадочных ошибок сборки. Однако это очень громоздко, и иногда я не помню, чтобы это делалось, либо шаг "до", либо шаг "после", и я должен исправить это позже.

Есть ли лучший способ избежать этого конфликта?

РЕДАКТИРОВАТЬ * см. Эти ссылки для примеров / предложений по временному перемещению /usr/local в качестве решения проблем сборки MacPort.

https://stackoverflow.com/questions/1827377/install-git-core-svn-fails-with-macport

https://trac.macports.org/ticket/21649

https://trac.macports.org/ticket/29998

1 ответ1

2

Я не понимаю, о каких /usr/local конфликтах вы говорите. MacPorts намеренно использует свою собственную иерархию /opt , чтобы избежать конфликтов с тем, что у вас уже было в /usr/local . Он не должен помещать что-либо в /usr/local если только вы не изменили его конфигурацию.

Вы думали о Homebrew? Я считаю, что Homebrew по-прежнему помещает вещи в /usr/local по умолчанию, тогда как MacPorts использует /opt а Fink использует /sw .

Поэтому я полагаю, что мой "лучший способ избежать этого конфликта" - это использовать MacPorts вместо Homebrew и оставить для MacPorts установленный по умолчанию префикс /opt .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .