Python安装、卸载和easy_install

7
我在我的Mac上安装了两个版本的Python:
一个是由Apple预装在/usr/bin目录下的;
另一个是从python.org下载并安装在/Library/Frameworks/Python.framework/Versions/2.6目录下的。
但是,由于某种难以理解的原因,easy_install总是安装在/usr/bin目录下。
因此,我现在明确地将easy_install安装在:
sh setuptools-0.6c11-py2.6.egg --install-dir=/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages

现在我想要使用 easy_install 安装 pip,然后......
Searching for pip
Best match: pip 0.8
Processing pip-0.8-py2.6.egg
pip 0.8 is already the active version in easy-install.pth
Installing pip script to /usr/local/bin
error: /usr/local/bin/pip: Permission denied

我的路径和Python路径:

PATH="/Library/Frameworks/Python.framework/Versions/2.6/bin:${PATH}"
export PATH

PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:${PATH}"
export PATH

PYTHONPATH="/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages"
export PYTHONPATH
  • 我还有一个PYTHONPATH,用来存放我编写的模块

抱歉,我真的不明白。

我做错了什么。

我只是想在框架Python目录中正常安装模块。

2个回答

8
根据提供的信息,很难确定您的安装状态。 /usr/local/bin 是Apple提供的/usr/bin/easy_install的默认安装位置,因此最可能的情况是,您在调用该程序而不是通过运行sh setuptools...脚本安装的easy_install。无需使用--install-dir参数安装setuptools,也不需要设置PYTHONPATH指向框架站点包目录;这些都会自动发生。您不应该两次修改PATH变量,只需使用第一个PATH并导出即可。
从新安装的Python 2.6.5(来自python.org安装程序)和新的终端会话开始,以下是整个序列:
$ curl -O http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  325k  100  325k    0     0   125k      0  0:00:02  0:00:02 --:--:--  136k
$ PATH="/Library/Frameworks/Python.framework/Versions/2.6/bin:${PATH}"
$ export PATH
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/2.6/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ which python2.6
/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6
$ python2.6 -c "import sys;print(sys.version_info)"
(2, 6, 5, 'final', 0)
$ sh setuptools-0.6c11-py2.6.egg 
Processing setuptools-0.6c11-py2.6.egg
Copying setuptools-0.6c11-py2.6.egg to /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages
Adding setuptools 0.6c11 to easy-install.pth file
Installing easy_install script to /Library/Frameworks/Python.framework/Versions/2.6/bin
Installing easy_install-2.6 script to /Library/Frameworks/Python.framework/Versions/2.6/bin
Installed /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg
Processing dependencies for setuptools==0.6c11
Finished processing dependencies for setuptools==0.6c11
$ which easy_install
/Library/Frameworks/Python.framework/Versions/2.6/bin/easy_install
$ easy_install pip
Searching for pip
Reading http://pypi.python.org/simple/pip/
Reading http://pip.openplans.org
Best match: pip 0.8
Downloading http://pypi.python.org/packages/source/p/pip/pip-0.8.tar.gz#md5=468d9adc309f33ad51cee38f0d455429
Processing pip-0.8.tar.gz
Running pip-0.8/setup.py -q bdist_egg --dist-dir /var/folders/Ux/UxzFPTCnF3esOnKQ1d3bbE+++TI/-Tmp-/easy_install-JU05mJ/pip-0.8/egg-dist-tmp-zwrzwI
warning: no previously-included files matching '*.txt' found under directory 'docs/_build'
no previously-included directories found matching 'docs/_build/_sources'
Adding pip 0.8 to easy-install.pth file
Installing pip script to /Library/Frameworks/Python.framework/Versions/2.6/bin
Installing pip-2.6 script to /Library/Frameworks/Python.framework/Versions/2.6/bin
Installed /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/pip-0.8-py2.6.egg
Processing dependencies for pip
Finished processing dependencies for pip
$ pip --version
pip 0.8 from /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/pip-0.8-py2.6.egg (python 2.6)

再次感谢!我从您上次的回答中学到了很多!我如何重新获得一个干净的刀片?我如何卸载所有东西?Sitepackages 和 Python?这样就不会留下任何可能出错的东西了! - MacPython
  1. 如何将命令:sh setuptools-0.6c11-py2.6.egg安装到Framework而不是usr/bin。如果我执行完全相同的操作,它会写入usr/bin。
  2. which easy_install: 感谢这个生命!!!
- MacPython
删除python.org 2.6以重新开始: sudo rm -r /Library/Frameworks/Python.framework/Versions/2.6 这是一行。请仔细输入!sh setuptools...脚本使用在您的shell PATH中首先找到的任何python2.6命令。那应该是框架bin目录中的命令。 - Ned Deily

1

卸载django包。

首先,您需要运行此命令:

$ easy_install -m [PACKAGE]

该命令将删除该包的所有依赖项。然后删除该包的egg文件。

$ rm -rf .../python2.X/site-packages/[PACKAGE].egg


OSX: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/ - mbunch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接