python 无法为安装基于pyproject.toml的项目所需的xmlsec生成wheel

1l5u6lss  于 2023-08-02  发布在  Python
关注(0)|答案(2)|浏览(199)

我试图安装requirements.txt文件在虚拟环境创建从peen在Mac上
arch-x86_64 pyenv install 3.10.11 pyenv virtualenv 3.10.11 venv_academy_olf pyenv activate venv_academy_olf
这是traceback错误:

Building wheel for xmlsec (pyproject.toml) ... error
  error: subprocess-exited-with-error
  × Building wheel for xmlsec (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [65 lines of output]
    running bdist_wheel
    running build
    running build_py
    creating build
    creating build/lib.macosx-13.4-x86_64-cpython-310
    creating build/lib.macosx-13.4-x86_64-cpython-310/xmlsec
    copying src/xmlsec/py.typed -> build/lib.macosx-13.4-x86_64-cpython-310/xmlsec
    copying src/xmlsec/tree.pyi -> build/lib.macosx-13.4-x86_64-cpython-310/xmlsec
    copying src/xmlsec/__init__.pyi -> build/lib.macosx-13.4-x86_64-cpython-310/xmlsec
    copying src/xmlsec/constants.pyi -> build/lib.macosx-13.4-x86_64-cpython-310/xmlsec
    copying src/xmlsec/template.pyi -> build/lib.macosx-13.4-x86_64-cpython-310/xmlsec
    running build_ext
    building 'xmlsec' extension
    creating build/temp.macosx-13.4-x86_64-cpython-310
    creating build/temp.macosx-13.4-x86_64-cpython-310/private
    creating build/temp.macosx-13.4-x86_64-cpython-310/private/var
    creating build/temp.macosx-13.4-x86_64-cpython-310/private/var/folders
    creating build/temp.macosx-13.4-x86_64-cpython-310/private/var/folders/yv
    creating build/temp.macosx-13.4-x86_64-cpython-310/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn
    creating build/temp.macosx-13.4-x86_64-cpython-310/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T
    creating build/temp.macosx-13.4-x86_64-cpython-310/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg
    creating build/temp.macosx-13.4-x86_64-cpython-310/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9
    creating build/temp.macosx-13.4-x86_64-cpython-310/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src
    clang -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -g -fwrapv -O3 -Wall -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include -I/usr/local/opt/libxml2/include -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_FTP=1 -DXMLSEC_NO_MD5=1 -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_NO_CRYPTO_DYNAMIC_LOADING=1 -DXMLSEC_CRYPTO_OPENSSL=1 -DMODULE_NAME=xmlsec -DMODULE_VERSION=1.3.13 -I/usr/local/Cellar/libxml2/2.11.4_1/include/libxml2 -I/usr/local/Cellar/libxmlsec1/1.3.1_1/include/xmlsec1 -I/usr/local/opt/openssl@3/include -I/usr/local/opt/openssl@3/include/openssl -I/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-build-env-1vqledsx/overlay/lib/python3.10/site-packages/lxml/includes -I/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-build-env-1vqledsx/overlay/lib/python3.10/site-packages/lxml -I/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-build-env-1vqledsx/overlay/lib/python3.10/site-packages/lxml/includes/libxml -I/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-build-env-1vqledsx/overlay/lib/python3.10/site-packages/lxml/includes/libxslt -I/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-build-env-1vqledsx/overlay/lib/python3.10/site-packages/lxml/includes/libexslt -I/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-build-env-1vqledsx/overlay/lib/python3.10/site-packages/lxml/includes/extlibs -I/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-build-env-1vqledsx/overlay/lib/python3.10/site-packages/lxml/includes/__pycache__ -I/Users/albertosanmartinmartinez/.pyenv/versions/3.10.11/envs/venv_academy_olf/include -I/Users/albertosanmartinmartinez/.pyenv/versions/3.10.11/include/python3.10 -c /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/constants.c -o build/temp.macosx-13.4-x86_64-cpython-310/private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/constants.o -g -std=c99 -fPIC -fno-strict-aliasing -Wno-error=declaration-after-statement -Werror=implicit-function-declaration -Os
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/constants.c:319:5: error: use of undeclared identifier 'xmlSecSoap11Ns'
      PYXMLSEC_ADD_NS_CONSTANT(Soap11Ns, "SOAP11");
      ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/constants.c:304:46: note: expanded from macro 'PYXMLSEC_ADD_NS_CONSTANT'
      tmp = PyUnicode_FromString((const char*)(JOIN(xmlSec, name))); \
                                               ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/common.h:19:19: note: expanded from macro 'JOIN'
  #define JOIN(X,Y) DO_JOIN1(X,Y)
                    ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/common.h:20:23: note: expanded from macro 'DO_JOIN1'
  #define DO_JOIN1(X,Y) DO_JOIN2(X,Y)
                        ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/common.h:21:23: note: expanded from macro 'DO_JOIN2'
  #define DO_JOIN2(X,Y) X##Y
                        ^
  <scratch space>:81:1: note: expanded from here
  xmlSecSoap11Ns
  ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/constants.c:320:5: error: use of undeclared identifier 'xmlSecSoap12Ns'; did you mean 'xmlSecXPath2Ns'?
      PYXMLSEC_ADD_NS_CONSTANT(Soap12Ns, "SOAP12");
      ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/constants.c:304:46: note: expanded from macro 'PYXMLSEC_ADD_NS_CONSTANT'
      tmp = PyUnicode_FromString((const char*)(JOIN(xmlSec, name))); \
                                               ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/common.h:19:19: note: expanded from macro 'JOIN'
  #define JOIN(X,Y) DO_JOIN1(X,Y)
                    ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/common.h:20:23: note: expanded from macro 'DO_JOIN1'
  #define DO_JOIN1(X,Y) DO_JOIN2(X,Y)
                        ^
  /private/var/folders/yv/mbl800td04xb4pd9hctdshd00000gn/T/pip-install-mfm_1tzg/xmlsec_8952d61e0e764874bfd13520e20f21f9/src/common.h:21:23: note: expanded from macro 'DO_JOIN2'
  #define DO_JOIN2(X,Y) X##Y
                        ^
  <scratch space>:83:1: note: expanded from here
  xmlSecSoap12Ns
  ^
  /usr/local/Cellar/libxmlsec1/1.3.1_1/include/xmlsec1/xmlsec/strings.h:34:33: note: 'xmlSecXPath2Ns' declared here
  XMLSEC_EXPORT_VAR const xmlChar xmlSecXPath2Ns[];
                                  ^
  2 errors generated.
  error: command '/usr/bin/clang' failed with exit code 1
  [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for xmlsec
Successfully built autobahn cairocffi case-conversion django-fixture-magic django-ipware django-log-formatter-json django-positions fixtures future jwcrypto MarkupPy maxminddb msgpack-python neovim odfpy pendulum py3-validate-email pycairo pyjsparser pynvim PyVimeo rcssmin rjsmin sgmllib3k simplegeneric tuspy unicodecsv
Failed to build xmlsec
ERROR: Could not build wheels for xmlsec, which is required to install pyproject.toml-based projects

字符串
我尝试安装库,但错误不断
brew install libxml2 libxmlsec1 pkg-config
有办法解决吗?

qxgroojn

qxgroojn1#

在配备M1 Max芯片和arm 64架构的MacBook Pro 16”上

  • 安装brew:

$ /bin/bash -c“$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”
$(echo; echo 'eval“$(/opt/homebrew/bin/brew shellenv)”')>> /Users/your_user_name/.zprofile
$ eval“$(/opt/homebrew/bin/brew shellenv)”

  • 安装库:

$ arch -arm 64 brew重新安装libxml 2
$ arch -arm 64 brew重新安装libxmlsec 1
$ arch -arm64 brew reinstall pkg-config
确保在.zshrc中导出一些变量:

export PATH="/opt/homebrew/opt/libxml2/bin:$PATH"
export LDFLAGS="-L/opt/homebrew/opt/libxml2/lib"
export CPPFLAGS="-I/opt/homebrew/opt/libxml2/include"
export PKG_CONFIG_PATH="/opt/homebrew/opt/libxml2/lib/pkgconfig"

字符串

  • 安装pyenv:

$ arch -arm 64 brew重新安装pyenv

  • 安装Python 3.10.11:

$ arch -arm64 pyenv install 3.10.11

  • 安装依赖项(激活虚拟环境):

$ python -m pip install --no-cache-dir -r requirements.txt

rur96b6h

rur96b6h2#

首先尝试重新安装依赖项,如下所示:

brew reinstall libxml2
brew reinstall libxmlsec1
brew reinstall pkg-config

字符串
如果你的问题还没有解决,试着像这样显式地指定依赖项的路径:

export LDFLAGS="-L/usr/local/opt/libxml2/lib -L/usr/local/opt/libxmlsec1/lib"
export CPPFLAGS="-I/usr/local/opt/libxml2/include -I/usr/local/opt/libxmlsec1/include"
export PKG_CONFIG_PATH="/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/libxmlsec1/lib/pkgconfig"


现在,尝试像这样再次安装需求:

pip install -r requirements.txt


祝你好运!

相关问题