Python 2.7 on System, PIP and Virtualenv still usi

2020-02-28 07:33发布

I am on MacOSx 10.6.8 and I have python 2.7 installed

python -v produces:

Python 2.7.2 (v2.7.2:8527427914a2, Jun 11 2011, 15:22:34) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
dlopen("/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/readline.so", 2);
import readline # dynamically loaded from /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/readline.so

I them run:

$ virtualenv venv

and then

$ . venv/bin/activate

and do a python -v

and I get:

Python 2.6.1 (r261:67515, Jun 24 2010, 21:47:49) 
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
dlopen("/Users/nkhdev/venv/lib/python2.6/lib-dynload/readline.so", 2);
import readline # dynamically loaded from /Users/nkhdev/venv/lib/python2.6/lib-dynload/readline.so

Can someone tell me the steps to use have virtualenv create and use python 2.7 from my system? Or have virtualenv, use python 2.7 period. I don't care if the version is my system version.

3条回答
We Are One
2楼-- · 2020-02-28 07:57

I had a similar problem, virtualenv python was picking up the 2.7.6 system python from /usr/bin/python rather than the 2.7.9 version in /usr/local/bin/python

I had to do:

sudo pip uninstall virtualenv

Then I installed setuptools like so:

curl https://bootstrap.pypa.io/ez_setup.py -o - | python

Then I installed pip with that new version of setuptools like so:

easy_install pip

Then I installed virtualenv

pip install --upgrade virtualenv
查看更多
欢心
3楼-- · 2020-02-28 07:59

My guess is that both pip and virtualenv are from the 2.6 distro. You can check which one the system users with which pip. If you do have other pip/virtualenv install (use which -a pip to find all of them) it might be that you need to tweak your PATH environment variable.

Another thing to note is the installed Python scripts usually have full path to the Python executable. You can see which python pip is using by running head $(which pip)

查看更多
做自己的国王
4楼-- · 2020-02-28 08:05

You probably used an existing, Apple-supplied version of easy_install to install pip et al. By default, easy_install is associated with a particular instance of Python, in this case, the Apple-supplied system Python 2.6. In general, when you install a new version of Python, you need to also install a new easy_install for it. Follow the instructions here for the Distribute package which provides easy_install, then use it to install pip and use that pip to install virtualenv.

查看更多
登录 后发表回答