Python的点子安装失败:无效的命令egg_info

我发现,最近经常当我尝试使用pip安装Python包时,出现下面的错误。

我在网上find一个参考文献,必须从下载目录中使用“ python2 setup.py install ”,并且确实发现如果我手动查找并下载软件包(来自pypi),那么这将会起作用。

但是,我不知道在哪里下载软件包,和/或为什么它以这种方式失败。

我试图做一个点子升级,但也失败了类似的方式,与一堆“未知的分布选项”错误(entry_points,zip_safe,test_suite,tests_require)!

  • 点子1.0.1
  • ActivePython 2.7

尝试使用ActiveState的pypm失败,因为它们有一个较小的库基,并且不包含这些包。

C:\test>pip install requests-oauth Downloading/unpacking requests-oauth Downloading requests-oauth-0.4.1.tar.gz Running setup.py egg_info for package requests-oauth E:\Plang\ActivePython\lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'zip_safe' warnings.warn(msg) E:\Plang\ActivePython\lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'install_requires' warnings.warn(msg) usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] or: -c --help [cmd1 cmd2 ...] or: -c --help-commands or: -c cmd --help error: invalid command 'egg_info' Complete output from command python setup.py egg_info: E:\Plang\ActivePython\lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'zip_safe' warnings.warn(msg) E:\Plang\ActivePython\lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'install_requires' warnings.warn(msg) usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] or: -c --help [cmd1 cmd2 ...] or: -c --help-commands or: -c cmd --help error: invalid command 'egg_info' 

安装与egg_info一起egg_info

应该像pip install Distribute一样简单pip install Distribute

从版本0.7开始,分发已经合并到Setuptools中。 如果您使用的版本<= 0.6,请使用pip install --upgrade setuptools升级pip install --upgrade setuptoolseasy_install -U setuptools

由于分发已经合并回setuptools,现在推荐安装/升级setuptools:

 [sudo] pip install --upgrade setuptools 

请记住,你可能必须做pip install --upgrade Distribute升级如果你已经安装了它,你的pip可能被称为pip2 Python2在某些系统(这是我的)。

在Ubuntu 12.04 LTS(Precise Pangolin)中,以上都没有为我工作,下面是我如何修复它:

https://pypi.python.org/pypi/setuptools下载;ez_setup.py (参见“安装说明”一节),然后:

 $ sudo python ez_setup.py 

我希望能省下一些时间。

我曾遇到过这个问题,以及OS X v10.9 (Mavericks)上Brewed Python的其他一些问题。

 sudo pip install --upgrade setuptools 

没有为我工作,我认为我的setuptools /分发设置是拙劣的。

我终于把它运行起来了

 sudo easy_install -U setuptools 

在CentOS 6.5上,干净安装的简短答案是:

yum -y install python-pip pip install -U pip pip install -U setuptools pip install -U setuptools

你没有看到双重的,你必须运行setuptools升级两次。 长的答案如下:

使用yum安装python-pip包会将python-setuptools作为依赖python-setuptools一起使用。 这是一个很老的版本,因此它实际上安装distribute (0.6.10) 。 在安装一个软件包pipe理器之后,我们通常要更新它,所以我们做pip install -U pip 。 当前版本的点是1.5.6。

现在我们去更新setuptools,这个版本的pip很聪明,知道它应该先删除旧的版本。 它这样做,但不是安装最新版本的setuptools,而是安装setuptools (0.6c11)

在这一点上,由于setuptools这个非常老的版本,所有的东西都被破坏了,但是我们实际上已经到了一半了。 如果我们现在再次运行完全相同的命令,则pip install -U setuptools ,旧版本的setuptools将被删除,并且安装5.5.1版本。 我不知道为什么pip不能一口气把我们直接带到新版本,但是这就是发生了什么,希望能帮助别人看到这一点,知道你不会发疯。

当您尝试安装pycurl时,可能会发生此错误。

在这种情况下,你应该这样做

 sudo apt-get install libcurl4-gnutls-dev librtmp-dev 

(创build于: https : //gist.github.com/lxneng/1031014 )

看起来像默认的easy_install在当前位置被打破:

$ which easy_install /usr/bin/easy_install

解决这个问题的一个方法是在站点包中使用easy_install。 例如:

$ sudo python /Library/Python/2.7/site-packages/easy_install.py boto

我面临同样的问题,我尝试了所有上述的答案。 但不幸的是,以上都没有奏效。

作为说明,我终于用pip uninstall distribute解决了这个问题。

我知道这是一个较老的问题,但这里是我用cassandra-driver实际安装在Windows 7 / Python2上的步骤。 我家有Windows 10 / Python3,今晚我会testing一下。 我已经证实,这也适用于Python 2和Python 2。

问题

 Command "python setup.py egg_info" failed with error code 1 in c:\users\Frito\appdata\local\temp\pip-build-7dgmdc\cassandra-driver 

TL; DR解决scheme

解决scheme (我很想有人解释为什么这个工作)

  • 尝试pip install cassandra-driver并得到了上述错误信息
  • 尝试pip install --pre cassandra-driver并得到以下错误
 distutils.errors.DistutilsError: Setup script exited with error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27 Command "c:\users\Frito\.virtualenvs\symdash\scripts\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\Frito\\appdata\\local\\temp\\pip-build-sesxxu\\cassandra-driver\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\Frito\appdata\local\temp\pip-ujsxsk-record\install-record.txt --single-version-externally-managed --compile --install-headers c:\users\Frito\.virtualenvs\symdash\include\site\python2.7\cassandra-driver" failed with error code 1 in c:\users\Frito\appdata\local\temp\pip-build-sesxxu\cassandra-driver 
  • Microsoft Visual C++ Compiler for Python 2.7安装了Microsoft Visual C++ Compiler for Python 2.7
  • 成功执行pip install --pre cassandra-driver
  • 成功执行pip uninstall cassandra-driver
  • 成功执行pip install cassandra-driver

重申一下,我不确定为什么这个工作。 现在我的两个主要结论是要么C ++编译器是必需的, 要么运行--pre选项第一次安装了“常规”安装中缺less的一些依赖关系。 当我有更多的细节时,我会在下class后更新。

pip install -U setuptoolseasy_install将egg-info放在错误的目录中。

然后我重新安装apt-get install python-dev 。 之后让我安装我想要的驱动程序

我只是将liquidki的答案转换成Ubuntu命令。 在基于Ubuntu的系统上工作!:

 sudo apt -y install python-pip pip install -U pip sudo pip install -U setuptools 

对于我来说,从8.1.1升级到9.0.1解决了这个问题。

你可以运行像sudo -H pip2 install --upgrade pip来升级你的pip版本。

sudo apt-get install apache2-dev解决了我的问题