我在Windows上安装了pip (与ActivePython捆绑在一起)、Debian 7(通过sudo apt-get install python-pip安装)和OSX10.8(通过easy_install pip安装)。
我想在不安装mercurial包的情况下下载它(只是一个.tar.gaz存档),所以我发布了以下有文档的命令:
pip install --download=. mercurial在Windows上,它可以工作,但在当前目录中没有显示任何文件。在Debian和OSX上,它会像这样失败:
Downloading/unpacking mercurial
Running setup.py egg_info for package mercurial
...
lots of text, complains about no headers to compile我做错什么了?我确信pip不应该实际使用--download命令运行某些东西,但在Debian和OSX上,它似乎都试图在下载后安装软件包:(。
发布于 2013-05-30 20:37:33
它实际上并不构建和安装软件包,但它确实执行了egg_info步骤,如果您的平台上的包可用的话。您可以从输出(或从~/..pip/pip.log)中看到这一点:
Running setup.py egg_info for package mercurial…
Command python setup.py egg_info failed with error code 1 in /var/folders/fl/kgrflrj92pv1yjr_918x0t800000gq/T/pip-build/mercurial无论该步骤成功还是失败,您最终仍然没有在站点包中安装任何东西。但是,除非目标目录成功,否则您可能不会得到目标目录中的tarball。(从一个非常快速的测试来看,Python2.7.2下的1.2.1和1.4dev1在失败时都无法将tarball复制到目标,而3.3.0中的1.4dev1则以其他方式复制…)但这可能会让人产生误解;两者之间的区别可能与tarball是否已经在下载缓存中或类似于…)有关。
https://stackoverflow.com/questions/16845391
复制相似问题