在OSX上安装具有多个版本的python包

时间:2014-08-21 15:39:51

标签: python macos python-2.7 python-3.x pip

我正在尝试在Mac OSX 10.9.4上安装python3.4的软件包。如你所知,python附带OSX,所以当我安装python3.4时,我很高兴地发现它带有自己的pip版本,可以安装软件包(在具有多个版本的python的mac上安装pip会导致它安装在系统的python2.7上。)

我之前尝试过安装这个软件包(https://pypi.python.org/pypi/chrome/0.0.1)和我的第一个pip安装程序(绑定到python2.7)并发现它已成功安装在该版本上,但没有安装在其他版本上。

我使用python3.4的新pip关键字运行安装(当它自己调用时会吐出帮助页面,所以我知道它有效)并告诉我该软件包已经安装并尝试更新。更新显示我已经有了最新版本。所以我尝试从python3.4卸载它并重新安装无效,并从python2.7卸载pip并仅在3.4版本上重新安装时得到相同的结果。

我知道这有点难以理解,但希望这是有道理的。

我还审核了内容here但没有成功。

解决:

虽然python确实有一个名称与它与包一起使用的目录相同的目录,但这不是正确的目录,对我来说它位于库的子目录中。虽然文档说引用pip2会导致包安装在python3.4上,但这是错误的。但是,引用pip3.4对我有用。

1 个答案:

答案 0 :(得分:1)

我的建议是你开始使用virtualenv。

假设你安装了3.4,那么你也应该有pyvenv。至于pip和3.4,应该已经安装了它。

使用例如版本3.4创建自己的虚拟环境并激活它:

$ mkdir ~/venv
$ pyvenv-3.4 ~/venv/py34
$ source ~/venv/py34/bin/activate
$ deactive                     # does what is says...
$ source ~/venv/py34/bin/activate
$ pip install ...  # whatever package you need

使用2.7版首先安装virtualenv,然后创建自己的虚拟环境并激活它。确保setuptools和pip已更新:

$ virtualenv-2.7 ~/venv/venv27
$ . ~/venv/venv27/bin/activate
$ pip install -U setuptools
$ pip install -U pip
$ pip install ...  # whatever package you need