首页 > 解决方案 > conda 安装在测试环境中

问题描述

我尝试创建自己的(第一个)conda包,最近晚上在 google、stack-overflow 和我的终端之间切换。我坚持以下几点:

我可以从我的项目(名为mcm)目录中成功构建conda build .. 之后,我按预期找到了 .tar 文件中的 tarball <my-dev-env>/conda-bld/noarch/mcm-v1.0a4-py_0.tar.bz2

现在我会发现在新环境中测试包是很自然的:

conda create -n test
conda activate test
conda install --use-local mcm

但是没有找到这个包——也许是合乎逻辑的,因为test不知道我的其他环境。我也从我的开发环境中尝试了相同的结果

conda install -n test --use-local mcm

错误总是如下:

Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.

PackagesNotFoundError: The following packages are not available from current channels:

  - mcm

... [list of channels follows]

当然,我可以使用实际 tarball 文件的路径进行安装,但它会排除依赖项,如此所述。

我的实际问题是如何使这项工作,但也(不)确认我的唠叨感觉我做错了。我也在conda-build文档页面上阅读了很多内容,尤其是这里

或者conda为自己的项目(不打算在工作同事之外发布)构建包是否过大,因为构建pipsetuptools似乎要容易得多?我只是受到了安装pip可能会破坏conda依赖关系的说法的影响。

标签: condaenvironmentconda-build

解决方案


我发现了以下问题:https ://github.com/conda/conda/issues/7024 。这张票被标记为已关闭,但我似乎仍然有这个问题conda 4.8.3

好吧,那里提供的解决方法对我有用,例如

$ conda install -c file:///home/.../miniconda3/envs/dev-env/conda-bld/ mcm

这至少是第一步。

现在,为了与亲爱的同事分享,我找到了这个: 如何托管​​我自己的私有 conda 存储库?. 理想情况下,这将位于文件服务器上,但在工作中,我们现在被 OneDrive 感染。也许这也可以。


推荐阅读