直到今天,我一直在使用macports版本python27
並通過macports安裝python軟件包。今天,我需要一些通過macports無法使用的軟件包;我瞭解了點子,並在那裏找到了它們。然而,在通過pip安裝這些軟件包之後,我意識到pip和macports都不會看到其他軟件安裝的東西。因此,爲了保持一致性,我決定卸載所有macports軟件包,通過macports安裝python27
和py27-pip
,然後繼續通過pip安裝我的所有python軟件包。Macports不識別pip安裝的軟件包
這很好,但由於macports不知道我的pip安裝的python軟件包,所以在安裝依賴於python的其他軟件時(例如,inkscape),我遇到了麻煩:macports試圖安裝它自己的版本, py27-numpy
(已經由pip安裝),然後安裝失敗,因爲它「已經存在並且不屬於註冊的端口」。
是否有一致的方式來使用pip並讓macport識別出可能需要其他東西的python包已經安裝了?
感謝您的回覆。我沒有打算使用macports來安裝python的包,但它需要python來安裝其他東西(例如,inkscape)。有沒有辦法告訴它,PIP已經安裝了諸如numpy之類的東西,並讓它使用它們? –
是否有理由需要安裝自己的numpy版本而不是使用MacPorts版本?你應該堅持這樣或那樣:(1)使用MacPorts端口安裝你需要的所有軟件包,並且如果沒有端口,就回退到通過pip手動安裝(或者更好的是請求創建或更新端口);或者(2)通過'pip'手動管理所有軟件包。你可以在任何一種場景中使用'virtualenv'。 –
我希望能使用選項(2),因爲pip看起來更全面,我想要一個單獨的管理器。但是,macports安裝的許多其他程序依賴於python,所以它總是會嘗試安裝它自己的版本。 –