2012-06-25 171 views
2

当我尝试在Python 2.7.2上安装OS X Lion上的Cairo时,它不起作用,我可以构建并安装它,但是当涉及到在python中导入cairo时,它不能被发现。我曾尝试How to install PyCairo 1.10 on Mac OSX with default,它只是产生这个错误在OS X Lion上安装Cairo

"_cairo_xlib_surface_get_width", referenced from: 
    _xlib_surface_get_width in surface.c.1.o 

ld: symbol(s) not found for architecture i386 
collect2: ld returned 1 exit status 
lipo: can't open input file: /var/folders/l9/71rhp2vs7w34bm4x6mfwms500000gn/T//cc1fcO7s.out (No such file or directory) 
Waf: Leaving directory `/Users/andrewlynch/Downloads/py2cairo-1.10.0/build_directory' 
Build failed 
-> task failed (exit status 1): 
    {task 4550820944: cshlib cairomodule.c.1.o,context.c.1.o,font.c.1.o,path.c.1.o,pattern.c.1.o,matrix.c.1.o,surface.c.1.o -> _cairo.so} 
['/usr/bin/gcc', 'src/cairomodule.c.1.o', 'src/context.c.1.o', 'src/font.c.1.o', 'src/path.c.1.o', 'src/pattern.c.1.o', 'src/matrix.c.1.o', 'src/surface.c.1.o', '-o', '/Users/andrewlynch/Downloads/py2cairo-1.10.0/build_directory/src/_cairo.so', '-L/usr/local/Cellar/cairo/1.10.2/lib', '-lcairo', '-lpython2.7', '-dynamiclib', '-Wl,-F.', '-arch', 'i386', '-arch', 'x86_64', '-Wl,-F.', '-Wl,-F.', '-arch', 'i386', '-arch', 'x86_64', '-arch', 'i386', '-arch', 'x86_64']} 
+0

它试图建立在i386,这是32位的东西,但我不知道如何修复对不起 – CharlesB

回答

2

我也有过类似的经历,而试图在OSX狮子安装PyCairo。默认安装尝试使用体系结构i386进行安装。您需要将其更改为64位体系结构x86_64。

我尝试设置CFLAGSCXXFLAGS为 '拱x86_64的',但这并没有工作。为了使其工作,我必须将ARCHFLAGS设置为此值。

export ARCHFLAGS="-arch x86_64" 

希望这会为您解决问题。

+0

这与'export PKG_CONFIG_PATH =/opt/local/lib/pkgconfig:$ PKG_CONFIG_PATH'一起工作。整个pycairo安装过程肯定会留下一些不足之处。 –