Як я можу запобігти Homebrew встановлювати дублікат програмного забезпечення, яке я встановив за допомогою інших засобів?


12

Мені подобається використовувати Homebrew для встановлення програмного забезпечення Unix на моєму Mac, і я ціную, що він не намагається встановити кілька копій таких речей, як Python. Однак деякі пакети, які я вже встановив вручну, я не хочу, щоб Homebrew встановлював свої власні копії.

У моїй теперішній ситуації я встановив OCaml за допомогою стандартного інсталятора. Тепер я хочу встановити Coq через Homebrew. Я бачу, brew deps coqщо це залежить від OCaml. Я знаю, що можу сказати, щоб цього разу пропустити встановлення OCaml через brew install --ignore-dependencies coq. Однак я б не хотів цього робити щоразу, коли встановлюю пакет Homebrew, для якого потрібен OCaml.

Як я можу змусити Homebrew робити вигляд, що він встановив програмне забезпечення, яке я встановив за допомогою інших засобів, щоб він не намагався встановити копію копії?

Відповіді:


14

Пройдіть шлях, який ви використовували --prefix=під час вашого, ./configureта sym-link, що до Cellar/каталогу, який використовує Homebrew. Homebrew побачить ці каталоги і побачить залежності задоволеними (якщо вам не потрібно скласти їх з певними функціями або без них, щоб формули Homebrew склали правильно). Якщо ваші вручну складені депіляції зібрані неправильно, ви, ймовірно, отримаєте помилки з програми Homebrew.

ln -s /path/from/prefix/ /usr/local/Cellar/path/from/prefix

(Зверніть увагу на кінець косої риси на першому шляху та відсутність треху косої риси на другому. OS X може бути прискіпливим щодо цих косої риски під час створення символьних посилань.)

Це неправильний спосіб зробити це, ви просто повинні використовувати --ignore-dependencies coq- ось для чого це потрібно.


1
Гарна відповідь на запитання, але також вказівник на рекомендований спосіб придушити певні залежності.
bmike

Це дуже хороше рішення для мене після того, як я витратив години на встановлення залежностей для Octave, до яких входив елісивний gcc (альтернатива кланг // LLVM) ...
nyxee
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.