Теперь мне нужно для установки модуля pytetgen (https://pypi.org/project/pytetgen/). Однако, когда я пытаюсь pip install pytetgen, установка завершается с ошибкой, говоря, что не удается найти модуль Cython. Но я могу вручную загрузить Cython из Python. И pip install Cython правильно сообщает мне, что модуль уже установлен. Моя переменная PYTHONPATH также, похоже, правильно указывает на модули, установленные spack.
Может ли кто-нибудь помочь мне устранить проблему дальше? Я, как и мои коллеги, в растерянности.
Похоже, что моя среда spack содержит правильный Python с необходимыми модулями:
Код: Выделить всё
$ spack find
==> In environment sierra_gcc
==> 10 root specs
[+] openmpi@4.0.5 [+] py-matplotlib [+] py-pandas [+] py-scikit-learn [+] python
[+] py-cython [+] py-numpy [+] py-pip [+] py-setuptools [+] seacas
-- linux-rhel8-icelake / gcc@10.2.0 -----------------------------
autoconf@2.72 libffi@3.4.6 parallel@20240822 py-scikit-learn@1.5.2
automake@1.16.5 libiconv@1.17 parallel-netcdf@1.12.3 py-scipy@1.14.1
berkeley-db@18.1.40 libidn2@2.3.7 pcre2@10.44 py-setuptools@69.2.0
bison@3.8.2 libjpeg-turbo@3.0.3 perl@5.40.0 py-setuptools-scm@8.0.4
bzip2@1.0.8 libmd@1.0.4 pigz@2.8 py-six@1.16.0
c-blosc@1.21.5 libpciaccess@0.17 pkgconf@2.2.0 py-threadpoolctl@3.1.0
ca-certificates-mozilla@2023-05-30 libpng@1.6.39 pmix@4.2.2 py-tomli@2.0.1
catch2@3.7.1 libpthread-stubs@0.5 py-beniget@0.4.1 py-typing-extensions@4.12.2
cgns@4.4.0 libsigsegv@2.14 py-contourpy@1.3.0 py-tzdata@2023.3
cmake@3.31.0 libtool@2.4.7 py-cppy@1.2.1 py-versioneer@0.29
curl@8.10.1 libunistring@1.2 py-cycler@0.11.0 py-wheel@0.41.2
diffutils@3.10 libx11@1.8.10 py-cython@3.0.11 python@3.13.0
expat@2.6.4 libxau@1.0.11 py-flit-core@3.9.0 python-venv@1.0
findutils@4.9.0 libxcb@1.17.0 py-fonttools@4.39.4 qhull@2020.2
fmt@11.0.2 libxcrypt@4.4.35 py-gast@0.5.4 re2c@3.1
freetype@2.13.2 libxdmcp@1.1.5 py-joblib@1.2.0 readline@8.2
gcc-runtime@10.2.0 libxml2@2.13.4 py-kiwisolver@1.4.5 seacas@2024-08-15
gdbm@1.23 lz4@1.10.0 py-matplotlib@3.9.2 snappy@1.2.1
gettext@0.22.5 m4@1.4.19 py-meson-python@0.16.0 sqlite@3.46.0
git@2.47.0 matio@1.5.26 py-numpy@2.1.2 tar@1.34
glibc@2.28 meson@1.5.1 py-packaging@24.1 util-linux-uuid@2.40.2
gmake@4.4.1 nasm@2.16.03 py-pandas@2.2.3 util-macros@1.20.1
hdf5@1.14.5 ncurses@6.5 py-pillow@11.0.0 xcb-proto@1.17.0
hwloc@2.11.1 netcdf-c@4.9.2 py-pip@23.1.2 xextproto@7.3.0
inputproto@2.3.2 nghttp2@1.63.0 py-ply@3.11 xproto@7.0.31
kbproto@1.0.7 ninja@1.12.1 py-pybind11@2.13.5 xtrans@1.5.2
krb5@1.21.3 numactl@2.0.18 py-pyparsing@3.1.2 xz@5.4.6
libaec@1.0.6 openblas@0.3.28 py-pyproject-metadata@0.7.1 zlib-ng@2.2.1
libbsd@0.12.2 openmpi@4.0.5 py-python-dateutil@2.8.2 zstd@1.5.6
libedit@3.1-20240808 openssh@9.9p1 py-pythran@0.16.1
libevent@2.1.12 openssl@3.4.0 py-pytz@2024.2
==> 122 installed packages
==> 0 concretized packages to be installed (show with `spack find -c`)
Код: Выделить всё
$ which python
~/spack/var/spack/environments/sierra_gcc/.spack-env/view/bin/python
Код: Выделить всё
$ python
Python 3.13.0 (main, Dec 3 2024, 14:21:56) [GCC 10.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> from Cython import *
>>>
Код: Выделить всё
$ echo $PYTHONPATH
/home/tvj/spack/var/spack/environments/sierra_gcc/.spack-env/view/lib:/home/tvj/spack/var/spack/environments/sierra_gcc/.spack-env/view/lib/python3.13/site-packages:.
Код: Выделить всё
$ pip install Cython
Requirement already satisfied: Cython in ./spack/var/spack/environments/sierra_gcc/.spack-env/view/lib/python3.13/site-packages (3.0.11)
Код: Выделить всё
$ pip install pytetgen
Collecting pytetgen
Using cached pytetgen-0.2.2.tar.gz (409 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... error
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [23 lines of output]
Traceback (most recent call last):
File "/home/tvj/spack/var/spack/environments/sierra_gcc/.spack-env/view/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in
main()
~~~~^^
File "/home/tvj/spack/var/spack/environments/sierra_gcc/.spack-env/view/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/tvj/spack/var/spack/environments/sierra_gcc/.spack-env/view/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
return hook(config_settings)
File "/tmp/pip-build-env-yzg25sy8/overlay/lib/python3.13/site-packages/setuptools/build_meta.py", line 334, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=[])
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-yzg25sy8/overlay/lib/python3.13/site-packages/setuptools/build_meta.py", line 304, in _get_build_requires
self.run_setup()
~~~~~~~~~~~~~~^^
File "/tmp/pip-build-env-yzg25sy8/overlay/lib/python3.13/site-packages/setuptools/build_meta.py", line 522, in run_setup
super().run_setup(setup_script=setup_script)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-yzg25sy8/overlay/lib/python3.13/site-packages/setuptools/build_meta.py", line 320, in run_setup
exec(code, locals())
~~~~^^^^^^^^^^^^^^^^
File "", line 5, in
ModuleNotFoundError: No module named 'Cython'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
[notice] A new release of pip is available: 23.1.2 -> 24.3.1
[notice] To update, run: python3 -m pip install --upgrade pip
Я отмечаю, что pytetgen, похоже, использует distutils в установочном файле. Может ли это быть связано с проблемой?
Подробнее здесь: https://stackoverflow.com/questions/792 ... thon-shows
Мобильная версия