ubuntu 20,通过 snap 包安装的 Blender。默认位置(我设法找到)是
- /snap/blender/current/2.xx/
我还安装了 Prism(VFX 管道工具)这个工具需要在 python 中安装 PySide2 包(随搅拌机一起提供)。根据论坛,我需要在里面复制 PySide2 目录
- blender/2.xx/python/lib/site-packages
但我无法将其粘贴到 SNAPPED 搅拌机中。(右键粘贴被禁用)。我已经通过root尝试过(仍然失败)'sudo nautilus'右键单击粘贴也被禁用。
任何想法/建议。提前致谢。
此解决方案适用于 Blender 用户,但该方法可能适用于具有嵌入式 Python 控制台的其他程序。
在 Blender 的 Python 控制台(不是脚本编辑器)中输入:
当 Blender python导入时,输出将包括 Blender 的 python 搜索 python 模块的所有文件夹命令被执行。在我的情况下,这包括 10 个文件夹,其中除了一个之外都是 snap 子文件夹,因此它们是“只读的”“已安装”,这意味着即使 sudo 命令也无法写入/复制到/粘贴到这些文件夹中的任何一个。例外是这些文件夹中倒数第二个。它不是 snap 子文件夹(请参阅下面我复制的 print('sys.path') 结果)。我几乎错过了它,但一看到它,我就豁然开朗了,因为我的策略是将所需的 Python 模块(*.py 文件)放在那个文件夹中。我首先使用 PIP 将所需的 python 模块安装到我系统的(非 Blender)python 模块区域(不受快照保护),然后将其从那里复制到 /home/vic/.config/blender/2.92/scripts /addons/modules 文件夹(我必须创建此文件夹路径的最后三个级别)。起初它没有'
我希望这对其他人有所帮助,因为我花了很长时间才克服了这个障碍。我希望 snap 的安全方法可以使所有这些子目录不可写,但我很高兴有人足够聪明,在 Blender 的嵌入式 Python 环境中允许至少一个后门安装额外的 Python 模块。