简体   繁体   English

ModuleNotFoundError:搅拌机上没有名为“OpenEXR”的模块

[英]ModuleNotFoundError: No module named 'OpenEXR' on blender

I'm trying to use OpenEXR module on blender's 3.1.2 script but I can't import it.我正在尝试在blender's 3.1.2脚本上使用OpenEXR模块,但我无法导入它。 I can import it using my python 3.8.10 installed.我可以使用我安装的python 3.8.10导入它。

I first install it using :我首先使用以下方式安装它:

pip install openexr

pip3 install openexr

sudo apt install libopenexr-dev

And it works fine on my python 3.8.10 command line.它在我的python 3.8.10命令行上运行良好。

I then tried to install it using the blender's python version :然后我尝试使用搅拌机的 python 版本安装它:

./python3.10 -m pip install openexr

but I get that error from gcc :但我从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.

Any way to solve that issue so I can use OpenEXR on blender or make blender to use python installed instead of it's own version ?有什么办法可以解决这个问题,这样我就可以在搅拌机上使用 OpenEXR 或者让搅拌机使用安装的 python 而不是它自己的版本?

I'm on ubuntu 20.04我在 ubuntu 20.04

I finally get it to work by copying the files from OpenEXR-1.3.8 into the folder of the python executable and then installing OpenEXR.我终于通过将文件从 OpenEXR-1.3.8 复制到 python 可执行文件的文件夹中然后安装 OpenEXR 来让它工作。

1- Download OpenEXR-1.3.8 from here . 1- 从这里下载OpenEXR-1.3.8

2- Copy all the files into your blender python executable, for me it was : /homa/jros/Downloads/blender-2.90.0-linux64/2.90/python/bin 2-将所有文件复制到您的blender python可执行文件中,对我来说它是: /homa/jros/Downloads/blender-2.90.0-linux64/2.90/python/bin

3- Run the executable with those parameters -m setup.py install like so 3-使用这些参数运行可执行文件-m setup.py install像这样

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

and it should work.它应该可以工作。 You might need to install those as well :您可能还需要安装这些:

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM