Posted By: Anonymous
I am trying to install packages from
pip to a fresh environment (virtual) created using anaconda. In the Anaconda docs it says this is perfectly fine. It is done the same way as for virtualenv.
Activate the environment where you want to put the program, then pip install a program…
I created an empty environment in Ananconda like this:
conda create -n shrink_venv
source activate shrink_venv
I then can see in the terminal that I am working in my env
(shrink_venv). Problem is coming up, when I try to install a package using
(shrink_venv): pip install Pillow Requirement already satisfied (use --upgrade to upgrade): Pillow in /Library/Python/2.7/site-packages
So I can see it thinks the requirement is satisfied from the system-wide package. So it seems the environment is not working correctly, definitely not like it said in the docs. Am I doing something wrong here?
Just a note, I know you can use
conda install for the packages, but I have had an issue with Pillow from anaconda, so I wanted to get it from
pip, and since the docs say that is fine.
which -a pip:
** UPDATE **
I see this is pretty common issue. What I have found is that the conda env doesn’t play well with the PYTHONPATH. The system seems to always look in the PYTHONPATH locations even when you’re using a conda environment. Now, I always run
unset PYTHONPATH when using a conda environment, and it works much better. I’m on a mac.
For others who run into this situation, I found this to be the most straightforward solution:
conda create -n venv_nameand
source activate venv_name, where
venv_nameis the name of your virtual environment.
conda install pip. This will install pip to your venv directory.
Find your anaconda directory, and find the actual venv folder. It should be somewhere like
Install new packages by doing
/anaconda/envs/venv_name/bin/pip install package_name.
This should now successfully install packages using that virtual environment’s pip!