1

当我在 osx 上使用 easy_install 安装 pycairo 时,出现如下错误消息:

Searching for pycairo
Reading http://pypi.python.org/simple/pycairo/
Reading http://cairographics.org/pycairo
Best match: pycairo 1.10.0
Downloading http://cairographics.org/releases/pycairo-1.10.0.tar.bz2
Processing pycairo-1.10.0.tar.bz2
error: Couldn't find a setup script in /tmp/easy_install-hnheQI/pycairo-1.10.0.tar.bz2

请帮帮我。提前致谢。

4

1 回答 1

1

看起来 pycairo 没有设置为easy_install能够(或pip能够)。

第一个问题是 PyPI 包 pycairo 指向 Python 3.x 版本,而不是 2.x 版本(称为 py2cairo),这意味着你不能easy_installpip install它用于 2.x。而且他们没有单独的 py2cairo PyPI 包。所以,你必须明确地easy_install http://cairographics.org/releases/py2cairo-1.10.0.tar.bz2.

第二个问题是 tarball 不是为构建而设计的setuptools;你必须使用waf.

因此,您将不得不下载上面的链接(或者,更好的是http://cairographics.org/pycairo/上的最新 py2cairo ),解压它,然后阅读并按照安装说明进行操作。

这也假设您已经正确安装了 Cairo(例如,通过 Homebrew)。

PS,并不是说它在这里会有什么不同,但你真的应该使用pip而不是easy_install. 您想要使用的唯一时间easy_install是安装pip自身 ( sudo easy_install pip),并安装两个或三个easy_install可以但不可以的软件包pip

您提到您通过 MacPorts 获得了 Cairo。MacPorts 不能很好地与非 MacPorts 配合使用。事实上,这就是重点:拥有一套完全隔离的工具和库,可以一起维护。这意味着如果你有 MacPorts' cairo,你可能想要它的py27-cairo, 和python27包。

如果您想要更好地与您的系统集成,请查找二进制文件、使用Homebrew或自己构建。(我注意到 Homebrew 也有一个公式py2cairo,我相信它会安装到你的系统 2.7 Python 中,但我没有测试它。通常,Homebrew 不提供 Python/Ruby/Perl 模块,因为你已经有了pip// gemcpan但它们对不能使用标准工具和/或难以设置的包进行了例外处理。)

于 2012-11-02T01:21:44.183 回答