Python 安装卸载 easy_install

7 投票
2 回答
19046 浏览
提问于 2025-04-16 03:22

我在我的Mac上有两个版本的Python:

一个是苹果预装的,放在 /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,我把自己写的模块放在这里。

抱歉,我真的不太明白。

我到底哪里做错了?

我只是想在Framework Python目录里正常安装模块。

2 个回答

1

要卸载django这个包,

首先你需要运行这个命令:

$ easy_install -m [PACKAGE]

这个命令会把这个包的所有依赖项都删掉,然后再删除这个包的egg文件。

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

8

根据提供的信息,很难准确判断你的安装状态。/usr/local/bin 是苹果自带的 /usr/bin/easy_install 的默认安装位置,所以很可能你在某种情况下调用了这个,而不是通过运行 sh setuptools... 脚本应该安装的那个 easy_install。其实,使用 --install-dir 参数来设置 setuptools 是没有必要的,也不需要把 PYTHONPATH 指向框架的 site-packages 目录;这些都是自动完成的。而且,你不应该修改 PATH 变量两次,只需使用第一次的 PATH 并导出即可。

从 python.org 安装的全新 Python 2.6.5 开始,以及一个新的终端会话,下面是整个过程:

$ 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)

撰写回答