ModuleNotFoundError: No module named 'OpenEXR' on blender

ModuleNotFoundError: No module named 'OpenEXR' on blender

我正在尝试在 blender's 3.1.2 脚本上使用 OpenEXR 模块,但我无法导入它。我可以使用我安装的 python 3.8.10 导入它。

我首先使用 :

安装它
pip install openexr

pip3 install openexr

sudo apt install libopenexr-dev

它在我的 python 3.8.10 命令行上运行良好。

然后我尝试使用搅拌机的 python 版本安装它:

./python3.10 -m pip install openexr

但我从 gcc 得到了那个错误:

Defaulting to user installation because normal site-packages is not writeable
Collecting openexr
  Using cached OpenEXR-1.3.8.tar.gz (11 kB)
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: openexr
  Building wheel for openexr (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [16 lines of output]
      Looking for libOpenEXR...
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.10
      copying Imath.py -> build/lib.linux-x86_64-3.10
      running build_ext
      building 'OpenEXR' extension
      creating build/temp.linux-x86_64-3.10
      gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -I/home/sybren/buildbot-builder/linux_glibc217_x86_64_cmake/build_deps/deps/Release/sqlite/include -I/home/sybren/buildbot-builder/linux_glibc217_x86_64_cmake/build_deps/deps/Release/bzip2/include -I/home/sybren/buildbot-builder/linux_glibc217_x86_64_cmake/build_deps/deps/Release/lzma/include -I/home/sybren/buildbot-builder/linux_glibc217_x86_64_cmake/build_deps/deps/Release/zlib/include -fPIC -fPIC -fPIC -I/usr/include/OpenEXR -I/usr/local/include/OpenEXR -I/opt/local/include/OpenEXR -I/usr/include/Imath -I/usr/local/include/Imath -I/opt/local/include/Imath -I/snap/blender/2106/3.1/python/include/python3.10 -c OpenEXR.cpp -o build/temp.linux-x86_64-3.10/OpenEXR.o -g -DVERSION="1.3.8"
      OpenEXR.cpp:1:10: fatal error: Python.h: No such file or directory
          1 | #include <Python.h>
            |          ^~~~~~~~~~
      compilation terminated.
      error: command '/usr/bin/gcc' 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 openexr
  Running setup.py clean for openexr
Failed to build openexr
Installing collected packages: openexr
  Running setup.py install for openexr ... error
  error: subprocess-exited-with-error
  
  × Running setup.py install for openexr did not run successfully.
  │ exit code: 1
  ╰─> [16 lines of output]
      Looking for libOpenEXR...
      running install
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.10
      copying Imath.py -> build/lib.linux-x86_64-3.10
      running build_ext
      building 'OpenEXR' extension
      creating build/temp.linux-x86_64-3.10
      gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -I/home/sybren/buildbot-builder/linux_glibc217_x86_64_cmake/build_deps/deps/Release/sqlite/include -I/home/sybren/buildbot-builder/linux_glibc217_x86_64_cmake/build_deps/deps/Release/bzip2/include -I/home/sybren/buildbot-builder/linux_glibc217_x86_64_cmake/build_deps/deps/Release/lzma/include -I/home/sybren/buildbot-builder/linux_glibc217_x86_64_cmake/build_deps/deps/Release/zlib/include -fPIC -fPIC -fPIC -I/usr/include/OpenEXR -I/usr/local/include/OpenEXR -I/opt/local/include/OpenEXR -I/usr/include/Imath -I/usr/local/include/Imath -I/opt/local/include/Imath -I/snap/blender/2106/3.1/python/include/python3.10 -c OpenEXR.cpp -o build/temp.linux-x86_64-3.10/OpenEXR.o -g -DVERSION="1.3.8"
      OpenEXR.cpp:1:10: fatal error: Python.h: No such file or directory
          1 | #include <Python.h>
            |          ^~~~~~~~~~
      compilation terminated.
      error: command '/usr/bin/gcc' failed with exit code 1
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> openexr

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

有什么方法可以解决这个问题,这样我就可以在搅拌机上使用 OpenEXR 或者让搅拌机使用 python 安装而不是它自己的版本?

我在 ubuntu 20.04

我终于通过将文件从 OpenEXR-1.3.8 复制到 python 可执行文件的文件夹中,然后安装 OpenEXR 来让它工作。

1- 从 here 下载 OpenEXR-1.3.8

2- 将所有文件复制到你的搅拌机 python 可执行文件中,对我来说是: /homa/jros/Downloads/blender-2.90.0-linux64/2.90/python/bin

3- 运行 带有这些参数的可执行文件 -m setup.py install 像这样

./python3.7m -m setup.py install

它应该可以工作。您可能还需要安装它们:

sudo apt install python3.10-dev
pip install openexr
pip3 install openexr
sudo apt install libopenexr-dev