我想为我的项目构建一个Conda包。然而,有一个包是在pip-only上的(没有上传到Conda频道)。如何在使用conda-build命令时包含pip only包?
我尝试使用Conda框架从PyPI URL构建包,但不起作用,因为PyPI站点上的文件是.whl文件,而不是像conda框架教程中那样的tar.gz文件。我该如何解决这个问题?
这是我在运行conda构建时得到的错误。
conda_build.exceptions.DependencyNeedsBuildingError: Unsatisfiable dependencies for platform osx-64: {'plaidml'}并使用conda skeleton pypi plaidml-keras为plaidml包构建骨架
Error: No source urls found for plaidml-keras在构建conda包时,有没有一个好的做法来包含pip only包?
发布于 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配方中安装依赖项,这些依赖项将成为包的一部分。这浪费了包中的空间,并增加了文件重叠、文件损坏和包损坏的风险。
https://stackoverflow.com/questions/63804392
复制相似问题