pip install lxml和gdal在anaconda环境中失败

时间:2013-08-26 03:52:22

标签: python lxml pip gdal anaconda

我在anaconda env中使用pip尝试安装需要GDAL或lxml的框架和软件包时遇到了持续的问题。我正在使用Anaconda安装的Python 2.7.5运行OSX 10.8。我已经安装了命令行工具Xcode 4.6.3。

在需要lxml或GDAL的软件包上(几乎每个GIS软件包)我都会遇到clang错误。这些通常是错误1或错误254.我安装了GDAL框架并且(显然)与QGIS一起运行(虽然这指的是系统python而不是Anaconda发行版)。我有Anaconda提供的lxml,它似乎在env中用于编写脚本。我试过更新lxml,没效果。本问题末尾包含两个示例日志。抱歉这个问题有点长......

通常重复的建议似乎是获得Xcode和CLT。正如我所说,我已经做到了。

我在网上看到的另一个想法与用于构建OSX的Anaconda Python发行版的C编译器有关。我对C编译器一无所知,但我知道pip将软件包安装到系统python中没有问题。当我启动系统Python时,我得到:

Python 2.7.2 (default, Oct 11 2012, 20:14:37) 
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

对于Anaconda Python,我得到:

Python 2.7.5 |Anaconda 1.6.1 (x86_64)| (default, Jun 28 2013, 22:20:13) 
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

注意GCC版本的差异。这有意义吗?

最近pip尝试安装kartograph.py失败了。在我的环境中运行pip install -r https://raw.github.com/kartograph/kartograph.py/master/requirements.txt后,我很快就遇到了麻烦

  Running setup.py egg_info for package lxml
    /Users/mmoncrief/anaconda/envs/py27/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
      warnings.warn(msg)
    Building lxml version 3.2.3.
    Building without Cython.
    Using build configuration of libxslt 1.1.28
    Building against libxml2/libxslt in the following directory: /Users/mmoncrief/anaconda/envs/py27/lib

    warning: no previously-included files found matching '*.py'
    warning: no files found matching '*.txt' under directory 'src/lxml/tests'
Downloading/unpacking ordereddict (from -r https://raw.github.com/kartograph/kartograph.py/master/requirements.txt (line 8))
  Downloading ordereddict-1.1.tar.gz
  Running setup.py egg_info for package ordereddict

Downloading/unpacking tinycss (from -r https://raw.github.com/kartograph/kartograph.py/master/requirements.txt (line 9))
  Downloading tinycss-0.3.tar.gz (72kB): 72kB downloaded
  Running setup.py egg_info for package tinycss
    Building with Cython 0.19.1.

    no previously-included directories found matching 'docs/_build'
Downloading/unpacking argparse (from -r https://raw.github.com/kartograph/kartograph.py/master/requirements.txt (line 10))
  Downloading argparse-1.2.1.tar.gz (69kB): 69kB downloaded
  Running setup.py egg_info for package argparse

    warning: no previously-included files matching '*.pyc' found anywhere in distribution
    warning: no previously-included files matching '*.pyo' found anywhere in distribution
    warning: no previously-included files matching '*.orig' found anywhere in distribution
    warning: no previously-included files matching '*.rej' found anywhere in distribution
    no previously-included directories found matching 'doc/_build'
    no previously-included directories found matching 'env24'
    no previously-included directories found matching 'env25'
    no previously-included directories found matching 'env26'
    no previously-included directories found matching 'env27'
Requirement already satisfied (use --upgrade to upgrade): distribute in ./anaconda/envs/py27/lib/python2.7/site-packages (from pykml->-r https://raw.github.com/kartograph/kartograph.py/master/requirements.txt (line 5))
Installing collected packages: GDAL, lxml, ordereddict, tinycss, argparse
  Running setup.py install for GDAL
    building 'osgeo._gdal' extension
    /usr/bin/clang -fno-strict-aliasing -I/Users/mmoncrief/anaconda/envs/py27/include -arch x86_64 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I../../port -I../../gcore -I../../alg -I../../ogr/ -I/Users/mmoncrief/anaconda/envs/py27/include/python2.7 -I/Users/mmoncrief/anaconda/envs/py27/lib/python2.7/site-packages/numpy/core/include -I/Library/Frameworks/GDAL.framework/Versions/1.10/include -c extensions/gdal_wrap.cpp -o build/temp.macosx-10.5-x86_64-2.7/extensions/gdal_wrap.o
    extensions/gdal_wrap.cpp:2230:11: warning: explicitly assigning a variable of type 'int' to itself [-Wself-assign]
                        res = SWIG_AddCast(res);
                        ~~~ ^              ~~~
    extensions/gdal_wrap.cpp:2233:11: warning: explicitly assigning a variable of type 'int' to itself [-Wself-assign]
                        res = SWIG_AddCast(res);
                        ~~~ ^              ~~~
    extensions/gdal_wrap.cpp:2853:10: fatal error: 'cpl_port.h' file not found
    #include "cpl_port.h"
             ^
    2 warnings and 1 error generated.
    error: command '/usr/bin/clang' failed with exit status 1
    Complete output from command /Users/mmoncrief/anaconda/envs/py27/bin/python -c "import setuptools;__file__='/private/var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-build-mmoncrief/GDAL/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-JGdZ16-record/install-record.txt --single-version-externally-managed:
    running install

running build

running build_py

creating build

creating build/lib.macosx-10.5-x86_64-2.7

copying gdal.py -> build/lib.macosx-10.5-x86_64-2.7

copying ogr.py -> build/lib.macosx-10.5-x86_64-2.7

copying osr.py -> build/lib.macosx-10.5-x86_64-2.7

copying gdalconst.py -> build/lib.macosx-10.5-x86_64-2.7

copying gdalnumeric.py -> build/lib.macosx-10.5-x86_64-2.7

creating build/lib.macosx-10.5-x86_64-2.7/osgeo

copying osgeo/__init__.py -> build/lib.macosx-10.5-x86_64-2.7/osgeo

copying osgeo/gdal.py -> build/lib.macosx-10.5-x86_64-2.7/osgeo

copying osgeo/gdal_array.py -> build/lib.macosx-10.5-x86_64-2.7/osgeo

copying osgeo/gdalconst.py -> build/lib.macosx-10.5-x86_64-2.7/osgeo

copying osgeo/gdalnumeric.py -> build/lib.macosx-10.5-x86_64-2.7/osgeo

copying osgeo/ogr.py -> build/lib.macosx-10.5-x86_64-2.7/osgeo

copying osgeo/osr.py -> build/lib.macosx-10.5-x86_64-2.7/osgeo

running build_ext

building 'osgeo._gdal' extension

creating build/temp.macosx-10.5-x86_64-2.7

creating build/temp.macosx-10.5-x86_64-2.7/extensions

/usr/bin/clang -fno-strict-aliasing -I/Users/mmoncrief/anaconda/envs/py27/include -arch x86_64 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I../../port -I../../gcore -I../../alg -I../../ogr/ -I/Users/mmoncrief/anaconda/envs/py27/include/python2.7 -I/Users/mmoncrief/anaconda/envs/py27/lib/python2.7/site-packages/numpy/core/include -I/Library/Frameworks/GDAL.framework/Versions/1.10/include -c extensions/gdal_wrap.cpp -o build/temp.macosx-10.5-x86_64-2.7/extensions/gdal_wrap.o

extensions/gdal_wrap.cpp:2230:11: warning: explicitly assigning a variable of type 'int' to itself [-Wself-assign]

                    res = SWIG_AddCast(res);

                    ~~~ ^              ~~~

extensions/gdal_wrap.cpp:2233:11: warning: explicitly assigning a variable of type 'int' to itself [-Wself-assign]

                    res = SWIG_AddCast(res);

                    ~~~ ^              ~~~

extensions/gdal_wrap.cpp:2853:10: fatal error: 'cpl_port.h' file not found

#include "cpl_port.h"

         ^

2 warnings and 1 error generated.

error: command '/usr/bin/clang' failed with exit status 1

----------------------------------------
Command /Users/mmoncrief/anaconda/envs/py27/bin/python -c "import setuptools;__file__='/private/var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-build-mmoncrief/GDAL/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-JGdZ16-record/install-record.txt --single-version-externally-managed failed with error code 1 in /private/var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-build-mmoncrief/GDAL
Storing complete log in /Users/mmoncrief/.pip/pip.log

我也有与lxml.etree相关的clang错误。你会在上面的代码中看到一些内容。另外,如果我只是尝试pip install lxml

Downloading/unpacking lxml
  Running setup.py egg_info for package lxml
    /Users/mmoncrief/anaconda/envs/py27/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
      warnings.warn(msg)
    Building lxml version 3.2.3.
    Building without Cython.
    Using build configuration of libxslt 1.1.28
    Building against libxml2/libxslt in the following directory: /Users/mmoncrief/anaconda/envs/py27/lib

    warning: no files found matching '*.txt' under directory 'src/lxml/tests'
Installing collected packages: lxml
  Running setup.py install for lxml
    /Users/mmoncrief/anaconda/envs/py27/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
      warnings.warn(msg)
    Building lxml version 3.2.3.
    Building without Cython.
    Using build configuration of libxslt 1.1.28
    Building against libxml2/libxslt in the following directory: /Users/mmoncrief/anaconda/envs/py27/lib
    building 'lxml.etree' extension
    /usr/bin/clang -fno-strict-aliasing -I/Users/mmoncrief/anaconda/envs/py27/include -arch x86_64 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Users/mmoncrief/anaconda/envs/py27/include -I/Users/mmoncrief/anaconda/envs/py27/include/libxml2 -I/private/var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-build-mmoncrief/lxml/src/lxml/includes -I/Users/mmoncrief/anaconda/envs/py27/include/python2.7 -c src/lxml/lxml.etree.c -o build/temp.macosx-10.5-x86_64-2.7/src/lxml/lxml.etree.o -flat_namespace
    clang: warning: argument unused during compilation: '-flat_namespace'
    src/lxml/lxml.etree.c:136455:17: warning: enumeration value '__pyx_e_4lxml_5etree_PARSER_DATA_INVALID' not handled in switch [-Wswitch]
            switch (__pyx_v_doc_ref->_type) {
                    ^
    src/lxml/lxml.etree.c:140541:72: warning: incompatible pointer types passing 'struct __pyx_obj_4lxml_5etree__BaseContext *' to parameter of type 'struct __pyx_obj_4lxml_5etree__XSLTContext *' [-Wincompatible-pointer-types]
        __pyx_t_1 = ((PyObject *)__pyx_f_4lxml_5etree_12_XSLTContext__copy(((struct __pyx_obj_4lxml_5etree__BaseContext *)__pyx_v_self->_context))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L9;}
                                                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    src/lxml/lxml.etree.c:138476:138: note: passing argument to parameter '__pyx_v_self' here
    static struct __pyx_obj_4lxml_5etree__BaseContext *__pyx_f_4lxml_5etree_12_XSLTContext__copy(struct __pyx_obj_4lxml_5etree__XSLTContext *__pyx_v_self) {
                                                                                                                                             ^
    src/lxml/lxml.etree.c:141947:70: warning: incompatible pointer types passing 'struct __pyx_obj_4lxml_5etree__BaseContext *' to parameter of type 'struct __pyx_obj_4lxml_5etree__XSLTContext *' [-Wincompatible-pointer-types]
      __pyx_t_1 = ((PyObject *)__pyx_f_4lxml_5etree_12_XSLTContext__copy(((struct __pyx_obj_4lxml_5etree__BaseContext *)__pyx_v_stylesheet->_context))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    src/lxml/lxml.etree.c:138476:138: note: passing argument to parameter '__pyx_v_self' here
    static struct __pyx_obj_4lxml_5etree__BaseContext *__pyx_f_4lxml_5etree_12_XSLTContext__copy(struct __pyx_obj_4lxml_5etree__XSLTContext *__pyx_v_self) {
                                                                                                                                             ^
    src/lxml/lxml.etree.c:160878:19: warning: expression result unused [-Wunused-value]
        PyObject_INIT(o, t);
                      ^
    /Users/mmoncrief/anaconda/envs/py27/include/python2.7/objimpl.h:164:69: note: expanded from macro 'PyObject_INIT'
        ( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )
                                                                        ^
    src/lxml/lxml.etree.c:162691:19: warning: expression result unused [-Wunused-value]
        PyObject_INIT(o, t);
                      ^
    /Users/mmoncrief/anaconda/envs/py27/include/python2.7/objimpl.h:164:69: note: expanded from macro 'PyObject_INIT'
        ( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )
                                                                        ^
    src/lxml/lxml.etree.c:168247:19: warning: expression result unused [-Wunused-value]
        PyObject_INIT(o, t);
                      ^
    /Users/mmoncrief/anaconda/envs/py27/include/python2.7/objimpl.h:164:69: note: expanded from macro 'PyObject_INIT'
        ( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )
                                                                        ^
    src/lxml/lxml.etree.c:170913:19: warning: expression result unused [-Wunused-value]
        PyObject_INIT(o, t);
                      ^
    /Users/mmoncrief/anaconda/envs/py27/include/python2.7/objimpl.h:164:69: note: expanded from macro 'PyObject_INIT'
        ( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )
                                                                        ^
    src/lxml/lxml.etree.c:12774:13: warning: function '__pyx_f_4lxml_5etree_displayNode' is not needed and will not be emitted [-Wunneeded-internal-declaration]
    static void __pyx_f_4lxml_5etree_displayNode(xmlNode *__pyx_v_c_node, PyObject *__pyx_v_indent) {
                ^
    8 warnings generated.
    /usr/bin/clang -bundle -undefined dynamic_lookup -L/Users/mmoncrief/anaconda/envs/py27/lib -arch x86_64 -arch x86_64 build/temp.macosx-10.5-x86_64-2.7/src/lxml/lxml.etree.o -L/Users/mmoncrief/anaconda/envs/py27/lib -lxslt -lexslt -lxml2 -lz -lm -o build/lib.macosx-10.5-x86_64-2.7/lxml/etree.so
    clang: error: unable to execute command: Segmentation fault: 11
    clang: error: linker command failed due to signal (use -v to see invocation)
    error: command '/usr/bin/clang' failed with exit status 254
    Complete output from command /Users/mmoncrief/anaconda/envs/py27/bin/python -c "import setuptools;__file__='/private/var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-build-mmoncrief/lxml/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-gtlqX_-record/install-record.txt --single-version-externally-managed:
    /Users/mmoncrief/anaconda/envs/py27/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'

  warnings.warn(msg)

Building lxml version 3.2.3.

Building without Cython.

Using build configuration of libxslt 1.1.28

Building against libxml2/libxslt in the following directory: /Users/mmoncrief/anaconda/envs/py27/lib

running install

running build

running build_py

creating build

creating build/lib.macosx-10.5-x86_64-2.7

creating build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/__init__.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/_elementpath.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/builder.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/cssselect.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/doctestcompare.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/ElementInclude.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/pyclasslookup.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/sax.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/usedoctest.py -> build/lib.macosx-10.5-x86_64-2.7/lxml

creating build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/__init__.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

creating build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/__init__.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/_diffcommand.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/_html5builder.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/_setmixin.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/builder.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/clean.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/defs.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/diff.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/ElementSoup.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/formfill.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/html5parser.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/soupparser.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

copying src/lxml/html/usedoctest.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/html

creating build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron

copying src/lxml/isoschematron/__init__.py -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron

copying src/lxml/lxml.etree.h -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/lxml.etree_api.h -> build/lib.macosx-10.5-x86_64-2.7/lxml

copying src/lxml/includes/c14n.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/config.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/dtdvalid.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/etreepublic.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/htmlparser.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/relaxng.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/schematron.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/tree.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/uri.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/xinclude.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/xmlerror.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/xmlparser.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/xmlschema.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/xpath.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/xslt.pxd -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/etree_defs.h -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

copying src/lxml/includes/lxml-version.h -> build/lib.macosx-10.5-x86_64-2.7/lxml/includes

creating build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources

creating build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/rng

copying src/lxml/isoschematron/resources/rng/iso-schematron.rng -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/rng

creating build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl

copying src/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl

copying src/lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl

creating build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1

copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1

copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1

copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1

copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1

copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1

copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt -> build/lib.macosx-10.5-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1

running build_ext

building 'lxml.etree' extension

creating build/temp.macosx-10.5-x86_64-2.7

creating build/temp.macosx-10.5-x86_64-2.7/src

creating build/temp.macosx-10.5-x86_64-2.7/src/lxml

/usr/bin/clang -fno-strict-aliasing -I/Users/mmoncrief/anaconda/envs/py27/include -arch x86_64 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Users/mmoncrief/anaconda/envs/py27/include -I/Users/mmoncrief/anaconda/envs/py27/include/libxml2 -I/private/var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-build-mmoncrief/lxml/src/lxml/includes -I/Users/mmoncrief/anaconda/envs/py27/include/python2.7 -c src/lxml/lxml.etree.c -o build/temp.macosx-10.5-x86_64-2.7/src/lxml/lxml.etree.o -flat_namespace

clang: warning: argument unused during compilation: '-flat_namespace'

src/lxml/lxml.etree.c:136455:17: warning: enumeration value '__pyx_e_4lxml_5etree_PARSER_DATA_INVALID' not handled in switch [-Wswitch]

        switch (__pyx_v_doc_ref->_type) {

                ^

src/lxml/lxml.etree.c:140541:72: warning: incompatible pointer types passing 'struct __pyx_obj_4lxml_5etree__BaseContext *' to parameter of type 'struct __pyx_obj_4lxml_5etree__XSLTContext *' [-Wincompatible-pointer-types]

    __pyx_t_1 = ((PyObject *)__pyx_f_4lxml_5etree_12_XSLTContext__copy(((struct __pyx_obj_4lxml_5etree__BaseContext *)__pyx_v_self->_context))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L9;}

                                                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

src/lxml/lxml.etree.c:138476:138: note: passing argument to parameter '__pyx_v_self' here

static struct __pyx_obj_4lxml_5etree__BaseContext *__pyx_f_4lxml_5etree_12_XSLTContext__copy(struct __pyx_obj_4lxml_5etree__XSLTContext *__pyx_v_self) {

                                                                                                                                         ^

src/lxml/lxml.etree.c:141947:70: warning: incompatible pointer types passing 'struct __pyx_obj_4lxml_5etree__BaseContext *' to parameter of type 'struct __pyx_obj_4lxml_5etree__XSLTContext *' [-Wincompatible-pointer-types]

  __pyx_t_1 = ((PyObject *)__pyx_f_4lxml_5etree_12_XSLTContext__copy(((struct __pyx_obj_4lxml_5etree__BaseContext *)__pyx_v_stylesheet->_context))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

                                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

src/lxml/lxml.etree.c:138476:138: note: passing argument to parameter '__pyx_v_self' here

static struct __pyx_obj_4lxml_5etree__BaseContext *__pyx_f_4lxml_5etree_12_XSLTContext__copy(struct __pyx_obj_4lxml_5etree__XSLTContext *__pyx_v_self) {

                                                                                                                                         ^

src/lxml/lxml.etree.c:160878:19: warning: expression result unused [-Wunused-value]

    PyObject_INIT(o, t);

                  ^

/Users/mmoncrief/anaconda/envs/py27/include/python2.7/objimpl.h:164:69: note: expanded from macro 'PyObject_INIT'

    ( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )

                                                                    ^

src/lxml/lxml.etree.c:162691:19: warning: expression result unused [-Wunused-value]

    PyObject_INIT(o, t);

                  ^

/Users/mmoncrief/anaconda/envs/py27/include/python2.7/objimpl.h:164:69: note: expanded from macro 'PyObject_INIT'

    ( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )

                                                                    ^

src/lxml/lxml.etree.c:168247:19: warning: expression result unused [-Wunused-value]

    PyObject_INIT(o, t);

                  ^

/Users/mmoncrief/anaconda/envs/py27/include/python2.7/objimpl.h:164:69: note: expanded from macro 'PyObject_INIT'

    ( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )

                                                                    ^

src/lxml/lxml.etree.c:170913:19: warning: expression result unused [-Wunused-value]

    PyObject_INIT(o, t);

                  ^

/Users/mmoncrief/anaconda/envs/py27/include/python2.7/objimpl.h:164:69: note: expanded from macro 'PyObject_INIT'

    ( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )

                                                                    ^

src/lxml/lxml.etree.c:12774:13: warning: function '__pyx_f_4lxml_5etree_displayNode' is not needed and will not be emitted [-Wunneeded-internal-declaration]

static void __pyx_f_4lxml_5etree_displayNode(xmlNode *__pyx_v_c_node, PyObject *__pyx_v_indent) {

            ^

8 warnings generated.

/usr/bin/clang -bundle -undefined dynamic_lookup -L/Users/mmoncrief/anaconda/envs/py27/lib -arch x86_64 -arch x86_64 build/temp.macosx-10.5-x86_64-2.7/src/lxml/lxml.etree.o -L/Users/mmoncrief/anaconda/envs/py27/lib -lxslt -lexslt -lxml2 -lz -lm -o build/lib.macosx-10.5-x86_64-2.7/lxml/etree.so

clang: error: unable to execute command: Segmentation fault: 11

clang: error: linker command failed due to signal (use -v to see invocation)

error: command '/usr/bin/clang' failed with exit status 254

----------------------------------------
Command /Users/mmoncrief/anaconda/envs/py27/bin/python -c "import setuptools;__file__='/private/var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-build-mmoncrief/lxml/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-gtlqX_-record/install-record.txt --single-version-externally-managed failed with error code 1 in /private/var/folders/l2/zvz4t5rs7pb3n1bc4_bdz6n4cbzgwl/T/pip-build-mmoncrief/lxml
Storing complete log in /Users/mmoncrief/.pip/pip.log

非常感谢帮助。我一直在Anaconda工作以获得其他应用程序,并希望继续使用此发行版。

2 个答案:

答案 0 :(得分:0)

这是我的0.02美元,根据我的经验,OS X上的lxml安装总是因为libmxl2和libxslt依赖而导致问题。这里的具体问题是找不到'cpl_port.h',表明你的系统上没有gdal的头文件,这与我在lxml上遇到的问题类似。我发现这个StackExchange帖子gdal package missing使用pip和虚拟Ubuntu机器来解决使用你的特定错误构建和安装gdal的问题,但这个想法是一样的。需要明确告知pip工具在哪里找到gdal的头文件。

一般来说,问题是OS X将标头放在* nix系统的非标准位置,并且通常依赖关系是用于开发您尝试安装的软件包的版本背后的几个版本。您可以使用MacPorts或类似的东西,它们将搭载OS X,为所有依赖项创建类似于Linux的结构,使用更多当前版本的库,但虚拟化程度非常好,很少有运行OS XI的生产系统感觉更简单解。我是一个15年以上的Apple用户,但是当谈到Mac上的Python开发时,我的建议是使用某种虚拟化工具,我真的很喜欢Vagrant和VirtualBox。除非您要在OS X或OS X Server上生成Python代码,否则最好在最终生产操作系统上进行开发,以便在开发期间了解可用的依赖性版本以及存在特定于环境的效果。再加上几乎任何其他操作系统都比安装OS X更容易安装像lxml和gdal这样的软件包,在Debian变种上使用简单的“sudo apt-get install -y --fix-missing”可以获得缺少的依赖关系并继续前进。 Vagrant甚至会将您的源文件从主机同步到guest虚拟机,这样您就可以毫不费力地使用富客户端IDE。

答案 1 :(得分:0)

在终端中使用conda install gdal,这将提取并安装gdal库