问题标签 [conda-build]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1281 浏览

anaconda - 从本地 C++ 程序构建 conda 包

我正在尝试构建(然后上传)一个 conda 包,其中包含我用 C++ 开发的自定义程序。
简化问题,我有以下内容meta.yaml

以及以下内容build.sh

我在这里有两个问题:
1)我应该如何以及在哪里复制作为make编译结果的二进制文件,以便在环境激活时确实可以识别它?
2) 我应该如何将 g++ 指定为依赖项?我希望以后可以使用这个包linux-64并且osx-64......在构建过程中(在Makefile中)我只使用g ++。


编辑

我已将构建脚本修改为:

现在conda-build成功了。但是,当我稍后尝试在本地安装软件包时,conda install --use-local我得到:

但这不是真的,我的二进制文件没有安装在任何地方并且无法识别......

0 投票
1 回答
121 浏览

conda - conda build - 添加大量测试数据的推荐方法

我正在为一个测试套件需要大量测试数据(~50MB)的软件开发一个 conda 包。conda 文档说明了如何使用配方中包含的测试数据。当测试数据很重时,我想最好动态下载它们而不是将数据包含在配方中,但是在 meta.yml 中声明它的最佳方法是什么?数据存档的下载和提取应该在 build.sh 还是其他地方完成?

0 投票
0 回答
333 浏览

python - 为 pypolymake 构建 conda 包时出错

我在 Windows 10 上使用 miniconda(有关 的输出,请参见下面的编辑 2 conda info)。我想使用 PyPI 包pypolymake。因此,我尝试按照此处给出的说明使用 conda 骨架构建 conda 包。在开始之前,我conda install git conda-build按照先决条件中的建议成功运行。

在我的 Anaconda Prompt 中运行命令conda skeleton pypi pypolymake时,我收到以下错误:

所以,我的问题是:这个错误来自哪里,我该如何避免它?

我还有第二个问题:我在哪个 conda 环境中执行命令重要conda skeleton pypi pypolymakeconda-build pypolymake?我应该这样做吗base(因为我最终可能想在不同的 conda 环境中使用 pypolymake)?或者我应该在我想使用 pypolymake 的环境之一中执行此操作?还是我必须在我想使用的每个环境中构建包?

提前感谢您的帮助和建议!

编辑:正如评论中所建议的,我已经尝试了 command conda skeleton pypi --extra-specs patch pypolymake,但我得到了不同的错误信息:

编辑2:这是输出conda info

编辑3:安装后m2-patch,我得到以下错误:

0 投票
1 回答
160 浏览

conda - conda 安装在测试环境中

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

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

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

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

错误总是如下:

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

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

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

0 投票
1 回答
660 浏览

python - Python 打包:在 `conda` `meta.yaml` 文件中创建对 `conda-forge` 包的依赖

我正在为另一个依赖项编写一个包,conda-forge并且需要指定一个conda-forge依赖项。本质上,我需要安装conda-forge gdal包的固定版本,因为它实际上编译了libtiff支持 BIGTIFF 文件的版本....

现在,如果我要安装gdalconda环境中,我会写类似的东西。

安装软件包时,我会gdal=2.4.4从安装的版本中获取此版本。conda-forge现在在meta.yaml文件中,我可以像这样指定包依赖项,但我没有看到如何指定 tar 文件的 URL,或者任何可行的方法。

任何有关如何执行此操作的建议将不胜感激。

0 投票
2 回答
530 浏览

conda - 将要求添加到“运行”或“主机”失败 conda-build

我正在使用 conda-build 从 python 源代码构建 conda 包,每当我向 meta.yaml 中“requirements”部分的“run”或“host”子部分添加内容时,都会出现以下错误:

删除“运行”和“主机”子部分使测试运行正常 - 构建的 tar.bz2 文件安装没有问题,导入成功。添加“构建”小节可以正常工作。使用 --debug 标志运行并没有添加任何有用的信息。我该如何调试这个?

这是我的 meta.yaml:

这是我的 run_test.sh (使用 run_test.py 代替产生相同的结果):

这是我的 setup.py:

meta.yaml 和 run_test.sh 脚本位于conda.recipe项目根目录下的子文件夹中。

由于某种原因,测试脚本甚至没有运行(文件 /tmp/test_ran.txt 没有创建)!如上所述,删除“运行”小节使测试运行正常,包括导入。

提前致谢。有人可以帮忙吗?为这事发疯...

0 投票
1 回答
100 浏览

conda - conda build:刚刚创建的目录上的访问错误

我正在尝试使用conda build .. 我已经走得很远了,但是在测试之后,我得到了这个输出:

但是,当 conda build 本身刚刚创建了整个目录时,怎么可能呢?为了安全起见,我刚刚重新启动,但这并没有帮助。在管理员提示符下运行 conda build 也没有。

为什么 conda 为 python 3.8 构建构建?meta.yaml 指定python>=3.6并且我所在的 conda 环境安装了 Python 3.7 -python --version在命令行上给出3.7.6. 指定conda build . --python=3.7不会更改包名称 - 它仍然是 ...py38...

0 投票
0 回答
444 浏览

python - conda-build 上传期间的包依赖项错误

我正在尝试将pycaret包上传到 anaconda,从而可以使用conda install pycaret. 这是第 21 期,我正在努力。

因此,我按照使用 conda 骨架构建 conda 包中的这些步骤,并通过运行创建meta.yaml文件(问题末尾的内容)conda skeleton pypi pycaret

之后,当我运行时conda-build pycaret,它会抛出依赖项错误。见下图。

在此处输入图像描述

在此处输入图像描述

也许是因为这些包还没有在 conda 中。我安装了它们,pip它们已经在我的 conda 基础环境中。

还要注意这个“平台 win-64 无法满足的依赖关系”。是否有意义?我正在使用 Windows 10 64 位。


这是meta.yaml内容,由conda skeleton

有什么建议么?这是我第一次将包上传到 conda。

0 投票
0 回答
121 浏览

python - conda-build 不安装要求

我正在尝试使用命令构建一个具有一个依赖项(snakemake)的简单 conda 包conda-build。我的meta.yaml文件是:

我的构建命令:

包构建成功。但是,在将包安装到新的 Conda 环境并尝试snakemake从依赖包运行命令后,我收到command not found错误并且snakemake没有安装包。

我应该如何更改我的构建以实际包含snakemakeconda 包?

系统:Ubuntu 20.04 Conda 版本:4.8.4

0 投票
1 回答
429 浏览

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

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

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

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

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

在构建 conda 包时如何包含仅 pip 包的良好做法?