2012-02-14 88 views
1

我想在我的电脑上安装lxml,但遇到困难。谁能帮忙?当我尝试执行'easy_install lxml'时,我提供了终端输出。我运行的是Mac OS X 10.5和Python 2.7.2版本。谢谢!:easy_install lxml os上的困难x 10.5

Macintosh-8:~ momdad$ easy_install lxml 
Searching for lxml 
Reading http://pypi.python.org/simple/lxml/ 
Reading http://codespeak.net/lxml 
Best match: lxml 2.3.3 
Downloading http://lxml.de/files/lxml-2.3.3.tgz 
Processing lxml-2.3.3.tgz 
Running lxml-2.3.3/setup.py -q bdist_egg --dist-dir /var/folders/NA/NA4jZIQeGBihRLry0Fm6v++++TI/-Tmp-/easy_install-CAOPgi/lxml-2.3.3/egg-dist-tmp-SOj-c0 
Building lxml version 2.3.3. 
Building without Cython. 
Using build configuration of libxslt 1.1.12 
Building against libxml2/libxslt in the following directory: /usr/lib 
src/lxml/lxml.etree.c:276:31: error: libxml/schematron.h: No such file or directory 
src/lxml/lxml.etree.c:276:31: error: libxml/schematron.h: No such file or directory 
src/lxml/lxml.etree.c:2007: error: syntax error before ‘xmlSchemaSAXPlugStruct’ 
src/lxml/lxml.etree.c:2009: error: syntax error before ‘}’ token 
src/lxml/lxml.etree.c:2007: error: syntax error before ‘xmlSchemaSAXPlugStruct’ 
src/lxml/lxml.etree.c:2009: error: syntax error before ‘}’ token 
src/lxml/lxml.etree.c: In function ‘__pyx_pf_4lxml_5etree_14_ParserContext_1__dealloc__’: 
src/lxml/lxml.etree.c:73868: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_14_ParserContext__copy’: 
src/lxml/lxml.etree.c:73962: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_14_ParserContext_prepare’: 
src/lxml/lxml.etree.c:74266: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_14_ParserContext_cleanup’: 
src/lxml/lxml.etree.c:74324: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree__handleParseResult’: 
src/lxml/lxml.etree.c:75040: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:75481: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:75494: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_pf_4lxml_5etree_14_ParserContext_1__dealloc__’: 
src/lxml/lxml.etree.c:73868: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_14_ParserContext__copy’: 
src/lxml/lxml.etree.c:73962: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_14_ParserContext_prepare’: 
src/lxml/lxml.etree.c:74266: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_14_ParserContext_cleanup’: 
src/lxml/lxml.etree.c:74324: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree__handleParseResult’: 
src/lxml/lxml.etree.c:75040: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:75481: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:75494: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_9iterparse__read_more_events’: 
src/lxml/lxml.etree.c:99050: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_9iterparse__read_more_events’: 
src/lxml/lxml.etree.c:99050: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_9XMLSchema__newSaxValidator’: 
src/lxml/lxml.etree.c:133262: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133262: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133262: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133263: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133298: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_pf_4lxml_5etree_30_ParserSchemaValidationContext___cinit__’: 
src/lxml/lxml.etree.c:133349: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133358: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133367: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_pf_4lxml_5etree_30_ParserSchemaValidationContext_1__dealloc__’: 
src/lxml/lxml.etree.c:133395: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133404: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133414: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_copy’: 
src/lxml/lxml.etree.c:133448: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133471: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133471: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133471: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_inject_default_attributes’: 
src/lxml/lxml.etree.c:133508: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133531: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_connect’: 
src/lxml/lxml.etree.c:133578: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133588: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133588: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133597: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133624: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133633: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133648: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133648: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_disconnect’: 
src/lxml/lxml.etree.c:133681: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133691: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133700: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_isvalid’: 
src/lxml/lxml.etree.c:133729: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133749: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_9XMLSchema__newSaxValidator’: 
src/lxml/lxml.etree.c:133262: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133262: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133262: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133263: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133298: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_pf_4lxml_5etree_30_ParserSchemaValidationContext___cinit__’: 
src/lxml/lxml.etree.c:133349: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133358: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133367: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_pf_4lxml_5etree_30_ParserSchemaValidationContext_1__dealloc__’: 
src/lxml/lxml.etree.c:133395: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133404: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133414: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_copy’: 
src/lxml/lxml.etree.c:133448: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133471: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133471: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133471: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_inject_default_attributes’: 
src/lxml/lxml.etree.c:133508: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133531: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_connect’: 
src/lxml/lxml.etree.c:133578: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133588: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133588: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133597: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133624: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133633: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133648: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133648: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_disconnect’: 
src/lxml/lxml.etree.c:133681: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133691: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133700: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_f_4lxml_5etree_30_ParserSchemaValidationContext_isvalid’: 
src/lxml/lxml.etree.c:133729: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:133749: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_tp_new_4lxml_5etree__ParserSchemaValidationContext’: 
src/lxml/lxml.etree.c:149004: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149005: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_tp_dealloc_4lxml_5etree__ParserSchemaValidationContext’: 
src/lxml/lxml.etree.c:149023: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149023: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149023: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149023: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_tp_traverse_4lxml_5etree__ParserSchemaValidationContext’: 
src/lxml/lxml.etree.c:149030: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149031: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_tp_clear_4lxml_5etree__ParserSchemaValidationContext’: 
src/lxml/lxml.etree.c:149039: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149040: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: At top level: 
src/lxml/lxml.etree.c:149150: error: invalid application of ‘sizeof’ to incomplete type ‘struct __pyx_obj_4lxml_5etree__ParserSchemaValidationContext’ 
src/lxml/lxml.etree.c: In function ‘__pyx_tp_new_4lxml_5etree__ParserSchemaValidationContext’: 
src/lxml/lxml.etree.c:149004: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149005: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_tp_dealloc_4lxml_5etree__ParserSchemaValidationContext’: 
src/lxml/lxml.etree.c:149023: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149023: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149023: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149023: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_tp_traverse_4lxml_5etree__ParserSchemaValidationContext’: 
src/lxml/lxml.etree.c:149030: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149031: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: In function ‘__pyx_tp_clear_4lxml_5etree__ParserSchemaValidationContext’: 
src/lxml/lxml.etree.c:149039: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c:149040: error: dereferencing pointer to incomplete type 
src/lxml/lxml.etree.c: At top level: 
src/lxml/lxml.etree.c:149150: error: invalid application of ‘sizeof’ to incomplete type ‘struct __pyx_obj_4lxml_5etree__ParserSchemaValidationContext’ 
lipo: can't open input file: /var/folders/NA/NA4jZIQeGBihRLry0Fm6v++++TI/-Tmp-//ccpgwsWT.out (No such file or directory) 
error: Setup script exited with error: command 'gcc' failed with exit status 1 
+0

只是一个猜测,但从错误它看起来像它无法找到libxslt。您可以将它安装在非标准位置(它正在'/ usr/lib'中查找),在这种情况下,可能会有一个命令行选项来告诉安装程序到哪里寻找。否则,您可能需要在'/ usr/lib'中安装libxslt。 – 2012-02-14 20:43:19

回答

0

我不能告诉你,根本原因只要看一眼错误,但也有几个简单的事情,你可以尝试先:

  • 运行安装的超级用户(sudo easy_install lxml),如果你还没有。
  • 尝试使用pip进行安装。我使用pip在OSX 10.6和10.7上安装了lxml,祝它好运。如果你还没有点子,只要做sudo easy_install pip。然后做sudo pip install lxml

让我们知道如果这不起作用。

编辑:我相信easy_install和pip都使用相同的软件包回购,但它值得一试。

+0

我仍然遇到构建错误,或许这条线特别指出了问题的根源? – user1118042 2012-02-14 21:34:18

+0

gcc -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -fno-common -dynamic -DNDEBUG -g -Os -Wall -Wstrict-prototypes -DMACOSX -I/usr/include/ffi -DENABLE_DTRACE -arch i386 -arch ppc -pipe -I/usr/include/libxml2 -I/System/Library/Frameworks/Python.framework/Versions/2.5/include/python2.5 -c src/lxml/lxml.etree.c -o build/temp.macosx-10.5-i386-2.5/src/lxml/lxml.etree.o -w -flat_namespace src/lxml/lxml.etree.c:276:31:error:libxml /schematron.h:没有这样的文件或目录 – user1118042 2012-02-14 21:34:27

+0

嗯,你可能有一个旧的/不匹配的libxml2版本。如果你想避免使用手动修复,你可以试试lxml的macports包。 'port search lxml'来查看可用的版本。 – larsbutler 2012-02-15 08:55:44