Homebrewが他の方法でインストールしたソフトウェアの複製をインストールしないようにするにはどうすればよいですか?


12

私はMacにUnixソフトウェアをインストールするためにHomebrewを使用するのが好きで、Pythonのようなものの複数のコピーをインストールしようとしないことを感謝しています。ただし、既に手動でインストールしたパッケージがいくつかあり、Homebrewにそれらの独自のコピーをインストールさせたくありません。

現在の状況では、標準インストーラーを使用してOCamlをインストールしました。ここで、Homebrew経由でCoqをインストールします。brew deps coqOCamlに依存していることがわかります。今回はOCamlのインストールをスキップするように伝えることができますbrew install --ignore-dependencies coq。ただし、OCamlを必要とするHomebrewパッケージをインストールするたびにこれを行う必要はありません。

Homebrewが他の手段でインストールしたソフトウェアをインストールしたように見せて、重複コピーをインストールしようとしないようにするにはどうすればよいですか?

回答:


14

Homebrewが使用しているディレクトリに、シンボリックリンクで使用したパスを使用し--prefix=ます。Homebrewはこれらのディレクトリを参照し、依存関係が満たされていることを確認します(Homebrewの式を正しくコンパイルするために特定の機能を使用して、または使用せずにコンパイルする必要がない限り)。手動でコンパイルしたdepが正しくコンパイルされない場合、Homebrewからエラーが発生する可能性があります。./configureCellar/

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

(最初のパスの末尾のスラッシュと、2番目のパスの末尾のスラッシュの欠如に注意してください。OSXは、シンボリックリンクを作成するときにこれらのスラッシュについて気にすることができます。)

これは間違った方法です。ただ使用するだけです--ignore-dependencies coq-それが目的です。


1
尋ねられたものに対する良い答えですが、特定の依存関係を抑制するための推奨される方法へのポインタもあります。
bmike

これは、私がgave(clang // LLVMの代替)を含むOctaveの依存関係をインストールするのに何時間も費やした後、私にとって非常に良いソリューションです
...-nyxee
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.