簡體   English   中英

Pip安裝全局而不是虛擬環境 - 即使所有路徑和pip指向正確的位置

[英]Pip installing globally and not in virtual environment — even with all paths and pip pointing to the right place

我已經閱讀了pip安裝在全球網站包而不是virtualenv並確保一切正確,我甚至在virtaulenv中重新安裝了easy_install的pip。

發生什么事很奇怪。 首先,它不會讓我安裝沒有sudo的包...如果我讀取文本輸出它試圖將它放在virtualenv路徑中按預期..然后我使用sudo,它的工作原理。

但是如果我嘗試安裝包(在這種情況下是django-bootstrap3),那么它表明:

(env)kevin@g3:~/djangoP/work$ sudo pip install django-bootstrap3
Requirement already satisfied (use --upgrade to upgrade): django-bootstrap3 in /usr/local/lib/python3.4/dist-packages

根據我的理解,這意味着它安裝在virtualenv之外。

不太確定該怎么做。 已經閱讀了一些博客,很多人都有問題的變化,但我似乎無法找到自己的解決方案。

我正在使用Ubuntu 14,Python 2.7並在我的主目錄中工作。

任何幫助都會很棒。

謝謝。

你不應該使用sudovirtualenv安裝軟件包。

它看起來像我的文件權限問題。 pipvirtualnev都安裝了root權限ant,這就是為什么當你嘗試在virtualenv安裝新包時需要sudo的原因。

檢查您正在使用的可執行文件的文件權限( virtualenvpip )。

dm@Z580:~$ which virtualenv
/usr/local/bin/virtualenv
dm@Z580:~$ ls -l /usr/local/bin/virtualenv
-rwxr-xr-x 1 root root 214 aug 18 21:20 /usr/local/bin/virtualenv

dm@Z580:~$ which pip
/usr/local/bin/pip
dm@Z580:~$ ls -l /usr/local/bin/pip
-rwxr-xr-x 1 root root 207 jun  3 15:33 /usr/local/bin/pip


dm@Z580:~$ virtualenv -p python2.7 testenv 
Running virtualenv with interpreter /usr/bin/python2.7
New python executable in testenv/bin/python2.7
Also creating executable in testenv/bin/python
Installing setuptools, pip, wheel...done.
dm@Z580:~$ source testenv/bin/activate

(testenv)dm@Z580:~$ which pip
/home/dm/testenv/bin/pip
(testenv)dm@Z580:~$ ls -l /home/dm/testenv/bin/pip
-rwxrwxr-x 1 dm dm 219 sep 21 17:29 /home/dm/testenv/bin/pip

你可以簡單地使用

./bin/pip

在您的虛擬環境中安裝任何東西。 (我無法評論這就是我必須在這里寫的原因)。

我今天遇到了同樣的問題,事實證明我在.bash_profile文件中手動設置了PYTHONPATH變量,因此在激活我的虛擬環境export PYTHONPATH=后在我的shell中運行export PYTHONPATH=為我做了訣竅。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM