依赖 apt 库构建 conda 包

Build a conda package relying on an apt library

我正在构建一个依赖 python 包 (scikits.sparse) 的科学 python 项目,该包提供对 C/Fortran 库 (libsuitesparse-dev 的绑定) 可以通过 apt-getyum 安装,但实际上不可能手动正确安装。

我想让所有平台上的用户都可以使用我的包,我认为最好的方法是使用带有 conda skeleton 的 conda 包构建,然后转换到其他平台。但是我不确定 conda 将如何管理来自 apt-get 的外部库依赖项,并且想知道除了 official instructions.

之外我是否需要做任何其他事情来使其工作

I am not sure how well conda will manage external library dependencies from apt-get

conda will not managed external libraries through apt-get 但是通过它自己的包管理系统。

apt and conda are two different and independant package management systems. One is the official debian/ubuntu package manager and the other is an additional package manager such as pip or npm。他们每个人都有自己的一组安装包和自己的数据库。

您可以通过以下方式分发您的项目 apt or conda 甚至两者,但您的用户必须选择一种分发渠道。

已经有一个conda recipe for the scikits.sparse library你可以通过

安装它
conda install -c https://conda.anaconda.org/menpo scikits.sparse

如果你想把它包含在你的食谱中,你必须在你的 .condarc:

中添加 menpo 频道
channels:
  - defaults
  - menpo 

然后在您的食谱中您可以要求 scikits.sparse 例如:

requirements:
  build:
    - python
    - setuptools

  run:
    - python
    - scikits.sparse