问题描述:在VS代码中,运行命令pip-install-bpy(如中所示https://pypi.org/project/bpy/)并得到以下错误消息:
PS C:Users(...)LocalProgramsPythonPython38> pip install bpy
Collecting bpy
Using cached bpy-0.0.0a0.tar.gz (19 kB)
ERROR: Command errored out with exit status 1:
command: 'c:users(...)localprogramspythonpython38python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\(...)\Local\Temp\pip-install-xln6pb4c\bpy\setup.py'"'"'; __file__='"'"'C:\Users\(...)\Local\Temp\pip-install-xln6pb4c\bpy\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'rn'"'"', '"'"'n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:Users(...)LocalTemppip-pip-egg-info-0pdk7e9q'
cwd: C:Users(...)LocalTemppip-install-xln6pb4cbpy
Complete output (16 lines):
Traceback (most recent call last):
File "c:users(...)localprogramspythonpython38libtokenize.py", line 342, in find_cookie
codec = lookup(encoding)
LookupError: unknown encoding: future_fstrings
During handling of the above exception, another exception occurred:
File "<string>", line 1, in <module>
File "c:users(...)localprogramspythonpython38libtokenize.py", line 394, in open
encoding, lines = detect_encoding(buffer.readline)
File "c:users(...)localprogramspythonpython38libtokenize.py", line 381, in detect_encoding
encoding = find_cookie(second)
File "c:users(...)localprogramspythonpython38libtokenize.py", line 350, in find_cookie
raise SyntaxError(msg)
SyntaxError: unknown encoding for 'C:\Users\(...)\Local\Temp\pip-install-xln6pb4c\bpy\setup.py': future_fstrings
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output. code here
-------我尝试了什么(没有成功(:-------
已安装轮子(pip-install-wheel(,然后从pypi.org下载软件包以手动安装:pip-install'C:\Users(…(\Downloads\bpy-2.82.1.tar.gz'得到了相同的错误。
-------结论:-------
无法在Blender之外使用bpy。我在Blender Stack Exchange上的另一篇帖子中发现了一些变通方法(我还没有尝试(感谢Anand和phd提供的非常有用的链接!
据我所知,实际上可以在blender之外运行bpy,并且声称其他信息是为旧版本编写的。不过,我不得不承认,我仍在安装bpy,这不是一项容易的任务,我还无法验证这一点。
在您的情况下,缺少一个pip模块。您可以使用pip install future_fstrings
进行安装。看看https://pypi.org/project/bpy/了解更多指南。
编辑:我能够在Windows和Linux下安装bpy。它在Linux上会出现一些错误,但在Windows下运行良好。而且绝对独立运行!
我使用了大量的试错,发现使用3.7.6的Python版本和20.2.4的pip版本,我可以通过pip-install-bpy安装bpy版本-2.82.1。我正在使用Windows 10和Anaconda提示符。
我想你不能安装bpy,因为你是用python 3.8版本安装bpy的。你必须降级你的python version to 3.7
结账https://pypi.org/project/bpy/
然后您可以看到bpy模块需要Python >=3.7, <3.8
版本
TL:DR-从预建车轮安装,而不是从标准pip install bpy && bpy_post_install
安装
在macos上安装错误:
在过去的8个小时左右,我一直在尝试安装它。
到目前为止我的安装步骤:
- 我按照blender.org上的说明从源代码构建了blender应用程序
- 根据bpy-github回购,bpy依赖于bpy构建(尽管它不在先决条件中(
- bpy构建的github repo没有很好的安装说明,setup.py脚本专门将操作系统声明为windows。所以,我基本上只是跳过了这个——这可能是安装失败的原因
- 在两次不同的尝试中,我使用了pyenv和virtualenv来创建一个python 3.7开发环境。两者都导致在
setup.py
运行期间挂起了pip install bpy
的安装。pip安装的实际错误是:
Collecting bpy
Using cached https://files.pythonhosted.org/packages/4b/ed/ba6092b691acc5b157891421d9fde4a9dd5dcc8a8b93a4e8119fec261391/bpy-2.82.1.tar.gz
Installing collected packages: bpy
Running setup.py install for bpy ... error
ERROR: Command errored out with exit status 1:
command: /<path-to-venv>/venv/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/setup.py'"'"'; __file__='"'"'/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'rn'"'"', '"'"'n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-record-ti3q9j4a/install-record.txt --single-version-externally-managed --compile --install-headers /<path-to-venv>/venv/include/site/python3.7/bpy
cwd: /private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/
Complete output (58 lines):
running install
running build
running build_py
creating build
creating build/lib.macosx-10.9-x86_64-3.7
creating build/lib.macosx-10.9-x86_64-3.7/blenderpy
copying blenderpy/__init__.py -> build/lib.macosx-10.9-x86_64-3.7/blenderpy
copying blenderpy/pre_uninstall.py -> build/lib.macosx-10.9-x86_64-3.7/blenderpy
copying blenderpy/post_install.py -> build/lib.macosx-10.9-x86_64-3.7/blenderpy
running build_ext
Preparing the build environment
Searching for compatible Blender online (this will take a while)
Found compatible Blender version 2.82
Cloning Blender source from git (this will take a while)
Cloning precompiled libs from svn (this will take a while)
cmake -DWITH_PYTHON_INSTALL=OFF -DWITH_PYTHON_MODULE=ON -DWITH_OPENMP=OFF -DWITH_AUDASPACE=OFF -S/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/build/temp.macosx-10.9-x86_64-3.7/blender -B/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/build/temp.macosx-10.9-x86_64-3.7/build
-- The C compiler identification is AppleClang 12.0.5.12050022
-- The CXX compiler identification is AppleClang 12.0.5.12050022
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detected OS X 11.3 and Xcode 12. at /Applications/Xcode.app
-- OSX_SYSROOT_PREFIX: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform
-- Setting deployment target to 10.11, lower versions are not supported
CMake Warning at CMakeLists.txt:580 (message):
WITH_OPENAL requires WITH_AUDASPACE which is disabled
CMake Warning at CMakeLists.txt:584 (message):
WITH_JACK requires WITH_AUDASPACE which is disabled
-- WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now
-- Performing Test SUPPORT_SSE_BUILD
-- Performing Test SUPPORT_SSE_BUILD - Success
-- SSE Support: detected.
-- Performing Test SUPPORT_SSE2_BUILD
-- Performing Test SUPPORT_SSE2_BUILD - Success
-- SSE2 Support: detected.
-- Found Git: /usr/bin/git (found version "2.30.1 (Apple Git-130)")
CMake Error at build_files/cmake/platform/platform_apple.cmake:38 (message):
Mac OSX requires pre-compiled libs at:
'/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/build/temp.macosx-10.9-x86_64-3.7/blender/../lib/darwin'
Call Stack (most recent call first):
CMakeLists.txt:808 (include)
-- Configuring incomplete, errors occurred!
See also "/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/build/temp.macosx-10.9-x86_64-3.7/build/CMakeFiles/CMakeOutput.log".
See also "/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/build/temp.macosx-10.9-x86_64-3.7/build/CMakeFiles/CMakeError.log".
error: command 'cmake' failed with exit status 1
----------------------------------------
ERROR: Command errored out with exit status 1: /<path to venv>/venv/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/setup.py'"'"'; __file__='"'"'/private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-install-m6rixhki/bpy/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'rn'"'"', '"'"'n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/4n/wsjhxhbn0pb11r7cyqcvtxcc0000gn/T/pip-record-ti3q9j4a/install-record.txt --single-version-externally-managed --compile --install-headers /<path to venv>/venv/include/site/python3.7/bpy Check the logs for full command output.
***突破****在写这篇文章的时候,我注意到bpy-github页面中的选项是通过预构建轮安装,而不是通常的pip install bpy && bpy_post_install
。你必须去一些"粗略"的网站才能下载该文件,但在我下载并以这种方式安装后,我就可以在blender应用程序之外运行blender脚本了!!
遗憾的是,"bpy"模块不能在Blender之外使用。
更多详细信息请点击此处:https://creativepolygon.com/development/starting-with-bpy-blender-python-part-1-installation