当我在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
请帮帮我。提前谢谢。
答案 0 :(得分:1)
看起来pycairo没有设置为easy_install
能够(或pip
能够)。
第一个问题是PyPI包pycairo指向Python 3.x版本,而不是2.x版本(称为py2cairo)这意味着你不能easy_install
或pip 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
能够但不能cairo
的软件包}能。
你提到你通过MacPorts开了Cairo。 MacPorts与非MacPorts不兼容。事实上,这就是重点:拥有一套可以一起维护的完全独立的工具和库。这意味着如果您拥有MacPorts'py27-cairo
,则可能需要其python27
和py2cairo
包。
如果您想要更好地与系统集成,请查找二进制文件,使用Homebrew或自行构建。 (我注意到Homebrew也有pip
的公式,我相信它会安装到你的系统2.7 Python中,但我还没有测试过。通常,Homebrew不提供Python / Ruby / Perl模块,因为您已经获得了gem
/ cpan
/ {{1}},但他们对不使用标准工具和/或难以设置的软件包进行了例外处理。)