首页 > 解决方案 > 使用 conda build 1 次构建 win32 和 win64 包

问题描述

我的纯 python 脚本是 32 位或 64 位不可知的,但我的依赖项不是。我想使用 cython 来加速一些功能,使包不是纯 python。我想在带有 python 32 位或 64 位的 Windows 上使用它们。

有没有办法用 1 个 conda 配方为win32win64平台构建一个 conda python 包?

有人会假设两个平台都可以使用运行时依赖项(例如 Numpy 等)。安装程序可以从 miniconda 32 或 64 位安装开始。

我已经阅读了区分meta.yaml 中buildhost需求、conda 构建变体和架构虚拟包的文档,但我正在努力查看这些功能的巧妙组合是否可以让我一次构建这两个包。

谢谢!

标签: pythonwindowscondaconda-build

解决方案


经过几次实验,我找到了我的问题的解决方案。如果您将以下内容放入conda_build_config.yaml

target_platform:
  - win-32
  - win-64

并确保您使用的requirements/build:是配方部分中的 Jinja 编译器函数meta.yaml

build:
  - {{ compiler('c')  }}
  - {{ compiler('cxx')  }}

然后conda build将一次性构建win-32win-64打包。(我使用了conda-build 64 位,但我认为这并不重要)。


推荐阅读