本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为其创建 conda 构建配方 Blender
您可以使用不同的应用程序来创建 conda 构建配方。 Blender可以免费使用,使用 conda 打包也很简单。Blender基金会为多个操作系统提供应用程序档案
d eadline-cloud.yaml
condaPlatforms: - platform: linux-64 defaultSubmit: true sourceArchiveFilename: blender-4.2.1-linux-x64.tar.xz sourceDownloadInstructions: 'Run "curl -LO https://download.blender.org/release/Blender4.2/blender-4.2.1-linux-x64.tar.xz"' - platform: win-64 defaultSubmit: false sourceArchiveFilename: blender-4.2.1-windows-x64.zip sourceDownloadInstructions: 'Run "curl -LO https://download.blender.org/release/Blender4.2/blender-4.2.1-windows-x64.zip"'
查看recipe目录中的文件。食谱的元数据位于 recipe/reci pe.yaml
您可以查看中选定的构建选项,meta.yaml以关闭各种二进制文件重定位和动态共享对象 (DSO) 链接检查。这些选项控制软件包安装到任何目录前缀的 conda 虚拟环境中的工作方式。默认值简化了将每个依赖库打包成单独的包的过程,但是在对应用程序进行二进制重新打包时,需要对其进行更改。
如果您要打包的应用程序需要额外的依赖库,或者您要单独打包应用程序的插件,则可能会遇到 DSO 错误。当依赖关系不在需要它的可执行文件或库的库的库搜索路径中时,就会发生这些错误。安装在系统上时,应用程序依赖库位于全局定义的路径中/usr/lib,例如/lib或。但是,由于 conda 虚拟环境可以放置在任何地方,因此没有绝对的使用路径。Conda 使用相对的 RPATH 功能(两者Linux兼而有之macOS)来处理这个问题。有关更多信息,请参阅有关使软件包可重定位的
Blender不需要任何 RPATH 调整,因为在构建应用程序存档时就考虑到了这一点。对于确实需要它的应用程序,你可以使用与 conda build 相同的工具:patchelf在 Linux 和更高版本install_name_tool上macOS。
在软件包构建过程中,运行 build.shbld.bat)脚本将文件安装到使用软件包依赖关系准备的环境中。这些脚本复制安装文件,从中$PREFIX/bin创建符号链接并设置激活脚本。开启Windows,它不创建符号链接,而是将 Blender 目录添加到激活脚本中的 PATH 中。
在 con cmd.exe da 构建配方中,我们使用.bat 文件来bash代替.bat 文件,因为这样可以提高构建脚本的一致性。Windows有关在上使用的bash提示,请参阅 De adline Cloud 开发者指南关于工作负载可移植性的建议。Windows如果你已经安装了 git fo Windowsbash。
conda 构建环境变量$SRC_DIR源存档数据、$PREFIX安装目录、$RECIPE_DIR访问配方中的其他文件、软件包名称$PKG_NAME和$PKG_VERSION版本以及目标 conda 平台$target_platform的值。
提交 Blender 4.2 软件包任务
您可以构建自己的 Blender 4.2 conda 包来渲染作业,方法是下载Blender存档,然后将作业提交到包构建队列。队列将任务发送到关联队列以构建软件包并重新索引 conda 频道。
这些说明使用兼容 bash 的 shell 中的 git 来获取 OpenJD 包构建任务,并从 Deadline Cloud 示例存储库中获取 conda 配方。GitHub
-
如果你使用的是Windows,则在安装 git 时会安装一个 bash 版本 git BASH。
-
你必须安装 De adline Cloud CLI
。 -
您必须登录 De adline Cloud 监控器。
-
使用以下命令打开 Deadline Cloud 配置 GUI,然后将默认服务器场和队列设置为包构建队列。
deadline config gui -
使用以下命令克隆 Deadline Cloud 示例GitHUb存储库。
git clone https://github.com/aws-deadline/deadline-cloud-samples.git -
切换到
conda_recipes目录中的deadline-cloud-samples目录。cd deadline-cloud-samples/conda_recipes -
运行名为的脚本
submit-package-job。该脚本提供了首次运行脚本时的下载Blender说明。./submit-package-job blender-4.2/ -
按照说明进行下载Blender。存档文件后,再次运行
submit-package-job脚本。./submit-package-job blender-4.2/
提交作业后,使用 Deadline Cloud 监控器查看作业运行时的进度和状态。
监视器的左下角显示了任务的两个步骤,即生成软件包,然后重新编制索引。右下角显示了每项任务的各个步骤。在此示例中,每个任务都有一个步骤。
监视器的左下角是工作的两个步骤,即构建软件包,然后重新索引 conda 频道。右下角是每个步骤的单独任务。在此示例中,每个步骤只有一个任务。
当您右键单击包构建步骤的任务并选择 “查看日志” 时,监视器会显示会话操作列表,显示任务在工作器上的计划方式。这些操作是:
-
同步附件-此操作复制输入作业附件或装载虚拟文件系统,具体取决于作业附件文件系统使用的设置。
-
启动 Conda — 此操作来自创建队列时默认添加的队列环境。该作业没有指定任何 conda 软件包,因此它可以快速完成并且不会创建 conda 虚拟环境。
-
La@@ unch CondaBuild Env — 此操作可创建自定义 conda 虚拟环境,其中包括构建 conda 包和重新索引频道所需的软件。它从 conda-forge 频道
安装。 -
任务运行-此操作生成Blender包并将结果上传到 Amazon S3。
操作运行时,它们会以结构化格式向 Amazon 发送日志 CloudWatch。作业完成后,选择 “查看所有任务的日志” 以查看有关作业运行环境的设置和拆除的其他日志。