2014-09-06 33 views

回答

5

我幫助維護自制軟件-python tap。這不是也不會被支持,並且有可能不是一個簡單的方法來做到這一點。

這是由於Homebrew將軟件包安裝到Homebrew的前綴中,這必然是全局性的。 Homebrew不知道virtualenvs或如何安裝軟件包。改變這將違反Homebrew設計的核心假設,即軟件包總是安裝到他們的私人Homebrew前綴。

對不起!

+0

你能解釋一下爲什麼嗎? – 2017-01-26 14:40:09

+0

Homebrew將軟件包安裝到Homebrew的前綴中,這必須是全局的。 Homebrew不知道virtualenvs或如何安裝軟件包。改變這將違反Homebrew設計的核心假設,即軟件包總是安裝到他們的私人Homebrew前綴。 – 2017-01-27 16:44:19

1

虛擬環境所做的只是通過修改PATH變量來改變Python解釋器的調用方式。 Homebrew沒有看這個,因爲它不使用Python來安裝軟件包(就像pip一樣)。正如Tim所說的那樣,Homebrew每次都會在自己的前綴中安裝。

人們可以想象一個修改過的Python虛擬環境,它也安裝了自己的Homebrew副本,但這幾乎是一件壞事。

可以做,如果你想在虛擬環境中自制包,是能夠在VENV系統網站套餐什麼(在Python3,這將是python3 -m venv --system-site-packages ~/path/to/venv)。這也可以用來更新現有的虛擬環境。

啓用系統網站套餐允許Python使用全球已安裝的軟件包,但它仍然會搜索VENV 第一裏面,你可以通過pip安裝的東西覆蓋全局包。據我所知,在這種情況下,你會走到正確的道路上。