2012-06-25 65 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安裝過程肯定會留下一些不足之處。 –