如何使用您的 conda 构建打包其他另一个构建

Posted

技术标签:

【中文标题】如何使用您的 conda 构建打包其他另一个构建【英文标题】:How to package other another build with your conda build 【发布时间】:2017-03-01 04:24:45 【问题描述】:

我正在使用

为我的 PyPI 包创建构建
> conda skeleton pypi myPackage
> conda build --python 3.5 myPackage

我收到以下错误:

BUILD START: myPackage-py33_0
updating index in: /data/anaconda2/conda-bld/linux-64
updating index in: /data/anaconda2/conda-bld/noarch
Can't build /home/user/myPackage due to unsatisfiable dependencies:
Package missing in current linux-64 channels:
  - mysqlclient

所以我从 PyPI 构建了 mysqlclient,这使我能够成功构建 myPackage:

> conda skeleton pypi mysqlclient
> conda build --python 3.5 mysqlclient

然后我启动我的新 conda env 并尝试安装我的包

> conda install -c wwbp myPackage
Fetching package metadata .........
Solving package specifications: .
PackageNotFoundError: Package not found: '' Dependency missing in current linux-64 channels:
  - myPackage 1.0.dev24* -> mysqlclient

You can search for packages on anaconda.org with

    anaconda search -t conda mysqlclient

然后我必须先安装mysqlclient,然后再安装myPackage

> conda install -c bioconda mysqlclient
> conda install -c wwbp myPackage

有没有办法将这个版本的 mysqlclient 包含在 myPackage 中?我希望能够通过一次安装调用来安装它。

【问题讨论】:

您只需将您的 mysqlclient 包上传到 myPackage 上传到的同一频道。然后conda install 将(应该)在同一频道中找到依赖项。 完美,谢谢。您应该将其发布为答案。 【参考方案1】:

您只需将您的mysqlclient 包上传到myPackage 上传到的同一频道。然后conda install -c mychannel myPackage 将(应该)在同一频道中找到依赖项。

【讨论】:

以上是关于如何使用您的 conda 构建打包其他另一个构建的主要内容,如果未能解决你的问题,请参考以下文章

conda 从本地存档文件构建源

一个jenkins远程操作另一个jenkins进行构建

如何使用pyinstaller打包32位的exe

Conda Build 打包 C++ 项目失败

如何在Docker文件中从自定义文件通道安装conda包?

用webpack构建您的前端项目