为什么Python easy_install无法在我的Mac上运行?

Eta*_*tan 59 python macos easy-install

我有一台运行Python 2.6的Mac.当我尝试使用时,easy_install我收到此消息:

/usr/bin/easy_install-2.6:7: UserWarning: Module pkg_resources was already imported from /System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.pyc, but /Library/Python/2.6/site-packages is being added to sys.path
  from pkg_resources import load_entry_point
/usr/bin/easy_install-2.6:7: UserWarning: Module site was already imported from /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site.pyc, but /Library/Python/2.6/site-packages is being added to sys.path
  from pkg_resources import load_entry_point
Traceback (most recent call last):
  File "/usr/bin/easy_install-2.6", line 10, in <module>
    load_entry_point('setuptools==0.6c9', 'console_scripts', 'easy_install')()
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py", line 271, in load_entry_point
    return False
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py", line 2173, in load_entry_point
    deps = []
ImportError: Entry point ('console_scripts', 'easy_install') not found
Run Code Online (Sandbox Code Playgroud)

我很困惑,我想知道如何解决这个问题.以前我没有收到此消息,然后在安装pip和卸载后,easy_install不再有效.我想知道如何解决这个问题,或者恢复Mac上的默认Python或easy_install设置.

mim*_*lea 154

  1. 检查/ usr/bin和/ usr/local/bin是否有easy_install安装并删除任何旧脚本:

    sudo rm -f /usr/bin/easy_install*
    sudo rm -f /usr/local/bin/easy_install*
    
    Run Code Online (Sandbox Code Playgroud)
  2. 下载并运行分发:

    curl -O https://svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.py
    
    sudo python distribute_setup.py
    sudo rm distribute_setup.py
    
    Run Code Online (Sandbox Code Playgroud)
  3. 再试一次,享受吧.例如:

    sudo easy_install pip
    
    Run Code Online (Sandbox Code Playgroud)

  • 安装OSX 10.9 Mavericks后,这对我也有用.谢谢 (8认同)
  • 在Mountain Lion升级之后,这些说明完美无缺.这有easy_install和pip工作,让我升级我的virtualenv和virtualenvwrapper,一切都很高兴. (3认同)
  • 在Linux上也为我工作,特别是CentOS 6. (2认同)
  • 使用URL`https:// svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.py`,因为python-distribute.org没有启动. (2认同)

zee*_*kay 27

我怀疑你可以easy_install再次使用的最简单的方法是安装distribute,这是distutils它自己的版本捆绑的改进版本easy_install.安装很简单:

curl -O http://python-distribute.org/distribute_setup.py
/usr/bin/python2.6 distribute_setup.py
Run Code Online (Sandbox Code Playgroud)

  • @DanaWoodman这不是一个有效的自制公式. (2认同)
  • 2013年的家伙,将"2.6"更改为"2.7"并且它有效! (2认同)

Dan*_*ada 9

安装新的操作系统(Lion OSX)后,我遇到了同样的问题.安装python后执行它

sudo easy_install ipython
ipython
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Traceback (most recent call last):
  File "/usr/local/bin/ipython", line 8, in <module>
    load_entry_point('ipython==0.10.2', 'console_scripts', 'ipython')()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 318, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2220, in load_entry_point
    raise ImportError("Entry point %r not found" % ((group,name),))
ImportError: Entry point ('console_scripts', 'ipython') not found
Run Code Online (Sandbox Code Playgroud)

然后我意识到这是一个许可问题.如果我以sudo的形式执行ipython脚本,那就有效了.

sudo ipython
Run Code Online (Sandbox Code Playgroud)

所以我将所有权从root更改为文件夹/Library/Python/2.7/site-packages/的user()

sudo chown -R <your_user>:wheel /Library/Python/2.7/site-packages/
Run Code Online (Sandbox Code Playgroud)

仅当您没有多个使用python的帐户时才使用更改所有权.

我希望它适合你.

最好


Mar*_*ers 5

您的setuptools安装已损坏.目录中的easy_install-2.6脚本/usr/bin只是一个easy_install在Python安装中加载实际模块的包装器,后者缺失.大概卸载pip要么打破它的指针(通常以目录中的.pth文件的形式site-packages)或删除整个包,但没有删除/usr/bin/easy_install-2.6包装脚本.

您最好的选择是按照setuptools PyPI页面上的说明setuptools从头再次重新安装.