是否有人使用新的WAF版本在Mac上安装了pycairo 1.10?它在上失败,找不到python头。

最佳答案

我认为Mac OS X的WAF严重受损:(
这就是它对我的作用。在python waf configure找不到python.h之后,我查看了build_目录中的config.log文件,发现失败的真正原因是体系结构不兼容。WAF脚本尝试使用i386体系结构在其中使用cpython调用构建一个简单的源文件。它不能这样做,因为我的python是为x86_64体系结构构建的。
我想,你可以把python重新构建成通用的二进制文件,我还没试过。但是,可以使用x86_64体系结构构建pycairo。方法如下。
我的设置:

$ python --version
Python 2.7.2

$ type python
python is /usr/local/bin/python

$ file /usr/local/bin/python
/usr/local/bin/python: Mach-O 64-bit executable x86_64

$ brew --version
0.8

important:my python版本是为x86_64体系结构构建的。在执行下面描述的步骤之前,请确保您也是如此。
BREW代表homebrew。您必须使用它而不是fink或macports,以便执行以下步骤。
现在,要安装cairo和pycairo,请执行以下操作:
brew install cairo(今天的版本1.10.2)
为python 2.x获取pycairo源代码(如果您获得快照,则称为py2cairo,而pycairo现在需要python 3.x)。我使用了来自主分支的源代码(commit f3435910d8f5365b45ebd42216f4043383c9e3e19)
在您选择的编辑器中打开wscript,在函数中找到行env = ctx.env,并在其下方添加以下行
configure
保存文件
在终端中运行以下命令:
env.append_unique('CFLAGS', ['-arch', 'x86_64'])
export CC=/usr/bin/gcc
重要提示:只有通过自制安装了cairo,后一条路径才对您有效。
然后运行pycairo安装文件中描述的waf命令:
export PKG_CONFIG_PATH=/usr/local/Cellar/cairo/1.10.2/lib/pkgconfig/
python waf configure
python waf build
这应该可以做到。如果它对你不起作用,我认为最好在pycairo邮件列表上提出这个主题(如果它有)。

关于python - 如何使用默认的python在Mac OSX上安装PyCairo 1.10,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6886578/

10-12 00:22
查看更多