

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 为以下对象创建 conda 构建配方 搅拌机
<a name="create-conda-recipe-blender"></a>

Blender可免费使用且易于与 conda 一起打包，这使其成为学习如何为 Deadl AWS ine Cloud（Deadline Cloud）创建 conda 包的良好起点。该Blender基金会在Blender网站上为多个操作系统提供[应用程序档案](https://download.blender.org/release/Blender4.5/)。 GitHub 网站上 Deadline Cloud 示例存储库[中的 ](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.5) Blender 4.5 样本配方将这些档案打包成一个 conda 包。

## 了解食谱
<a name="blender-recipe-structure"></a>

网站上的 [ recipe.yaml ](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/blender-4.5/recipe/recipe.yaml) 文件在 prefix.dev GitHub 网站上以 [ rattler-build 模板语法定义了软件包元数据、源网址和编译选项。](https://rattler-build.prefix.dev/latest/reference/recipe_file/#spec-reference)该配方仅指定一次版本号，并根据操作系统提供不同的源网址。

中的`build`部分`recipe.yaml`关闭了二进制重定位和动态共享对象 (DSO) 链接检查。这些选项控制软件包安装到任何目录前缀的 conda 虚拟环境中的工作方式。`build`本节中使用的默认值是为单独打包每个依赖库而设计的，但是当二进制重新打包应用程序时，需要对其进行更改。Blender不需要任何 RPATH 调整，因为应用程序存档在构建时考虑了可重定位性。有关添加可重定位性的示例，请参见为 Maya [为以下对象创建 conda 构建配方 Autodesk 玛雅](create-conda-recipe-maya.md) 创建 conda 配方。

在软件包构建期间， GitHub 网站上[的 build.sh ](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/blender-4.5/recipe/build.sh) 或 [ build\_win.sh ](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/blender-4.5/recipe/build_win.sh) 脚本将运行以将文件安装到环境中。这些脚本将安装文件复制到`$PREFIX/opt/blender`，从`$PREFIX/bin`（上Linux）创建符号链接，并设置激活脚本来配置环境变量，例如`BLENDER_LOCATION`。开启时Windows，激活脚本将Blender目录添加到 PATH 中，而不是创建符号链接。

为了实现跨平台的一致性，Windows构建脚本使用 `cmd.exe` .bat 文件`bash`代替。你可以在适用于 Windows [ Windows 的 ](https://gitforwindows.org/) Git 网站上安装 git for 以提供软件包构建`bash`的功能。

该配方还包括一个`deadline-cloud.yaml`文件，该文件指定了用于向 Deadline Cloud 提交自动包构建任务的 conda 平台和元数据。有关更多信息，请参阅[提交软件包构建任务](automate-package-builds.md#automate-submit-package-job)。

## 建造 搅拌机 程序包
<a name="s3-channel-build-blender"></a>

`rattler-build publish`用于构建 Blender 4.5 版本的配方并将软件包发布到某个频道。您可以发布到本地文件系统频道进行测试，也可以直接发布到 Amazon S3 频道以供生产使用。如果您在本地[构建和测试包中完成了设置](build-test-packages-locally.md)，请从该`conda_recipes`目录运行以下命令。

```
rattler-build publish blender-4.5/recipe/recipe.yaml \
    --to file://$HOME/my-conda-channel \
    --build-number=+1
```

对于其他发布选项：
+ 要发布到 Amazon S3 频道，请参阅[将包发布到 S3 conda 频道](publish-packages-s3-channel.md)。
+ 要使用 Deadline Cloud 包构建队列自动构建，请参阅使用 Deadline Cloud [ 自动生成软件包](automate-package-builds.md)。