我认为waf对于Mac OS X严重损坏了:(
这就是它对我的工作方式。在
python waf configure找不到Python.h之后,我浏览了位于 build_directory 的
config.log
文件,发现真正的失败原因是体系结构不兼容。waf脚本尝试使用i386体系结构在其中包含CPython调用的情况下构建简单的源文件。这样做失败了,因为我的python是为x86_64体系结构构建的。
我想,您可以将python重建为通用二进制文件,但我还没有尝试过。但是,可以使用x86_64体系结构构建pycairo。这是如何做。
我的设置:
$ python --versionPython 2.7.2$ type pythonpython is /usr/local/bin/python$ file /usr/local/bin/python/usr/local/bin/python: Mach-O 64-bit executable x86_64$ brew --version0.8
重要:我的python版本是为该x86_64
体系结构构建的。在执行以下步骤之前,请确保您的情况也是如此。
布鲁代表
自制。您必须使用它而不是fink或MacPorts才能使以下步骤为您工作。
现在,要安装cairo和pycairo,请执行以下操作:
brew install cairo
(截至今天的 1.10.2 版)- 获取python 2.x的pycairo源(如果获得快照,则名为 py2cairo ,而 pycairo 现在需要python 3.x)。我使用了来自 master 分支的源代码(提交f3435910d8f5365b45ebd4216f4043383c9e3e19)
wscript
在您选择的编辑器中打开,env = ctx.env
在函数中找到该行,configure
并在其下方添加以下行
env.append_unique('CFLAGS', ['-arch', 'x86_64'])保存文件
在终端中运行以下命令:
export CC=/usr/bin/gcc
export PKG_CONFIG_PATH=/usr/local/Cellar/cairo/1.10.2/lib/pkgconfig/
重要提示:仅当您通过自制软件安装cairo时,后一种路径才适用
- 然后运行pycairo的INSTALL文件中描述的waf命令:
python waf configure
python waf build
python waf install
这应该做。如果它对您不起作用,我认为最好在pycairo邮件列表中提出该主题(如果有)。



