首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在使用conda-build构建conda包时包含pip-only包?

如何在使用conda-build构建conda包时包含pip-only包?
EN

Stack Overflow用户
提问于 2020-09-09 11:35:16
回答 1查看 348关注 0票数 3

我想为我的项目构建一个Conda包。然而,有一个包是在pip-only上的(没有上传到Conda频道)。如何在使用conda-build命令时包含pip only包?

我尝试使用Conda框架从PyPI URL构建包,但不起作用,因为PyPI站点上的文件是.whl文件,而不是像conda框架教程中那样的tar.gz文件。我该如何解决这个问题?

这是我在运行conda构建时得到的错误。

代码语言:javascript
复制
conda_build.exceptions.DependencyNeedsBuildingError: Unsatisfiable dependencies for platform osx-64: {'plaidml'}

并使用conda skeleton pypi plaidml-keras为plaidml包构建骨架

代码语言:javascript
复制
Error: No source urls found for plaidml-keras

在构建conda包时,有没有一个好的做法来包含pip only包?

EN

回答 1

Stack Overflow用户

发布于 2020-10-07 01:01:22

我查看了conda-build文档,看起来您可以使用轮子作为依赖项来构建conda包。从conda-build user guide docs

要从轮文件构建conda包,请将.whl文件安装在conda配方的bld.bat或build.sh文件中。

您可以在conda配方的meta.yaml文件的源代码部分下载.whl文件。

您可以将URL直接放入pip install命令中。

示例: TensorFlow的conda配方在build.sh中有一个带有.whl文件URL的pip install命令。meta.yaml文件不会下载或列出.whl文件。

备注

重要的是,pip只安装一个所需的软件包。只要有可能,使用conda而不是pip安装依赖项。

我们强烈建议在pip install命令中使用--no-deps选项。

如果不带--no-deps选项运行pip install,pip通常会在conda配方中安装依赖项,这些依赖项将成为包的一部分。这浪费了包中的空间,并增加了文件重叠、文件损坏和包损坏的风险。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63804392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档