问题标签 [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.
github - Conda 构建:github 和 bitbucket
我正在为在 bitbucket 上发布的工具包制作 conda 包。查看 meta.yml 文件的文档,特别是源代码部分,可能是 git_url 和 hg_url。给出的 url 是 .git,但不是来自 github。这有什么区别吗?另外,我在哪里可以找到 git_rev 字符串?
谢谢!
source:
git_url: https://bitbucket.org/***/***.git
git_rev: master
编辑:添加了 markdown 格式的代码,删除了在注释中粘贴的尝试代码。
macos - 无法在 MAC OS 上构建任何 conda 包
在我的 macOS(High Sierra,版本 10.13.6)上构建任何 conda recipie 时,我收到以下错误:
我做了以下事情:
- 下载并安装https://repo.anaconda.com/archive/Anaconda3-2019.03-MacOSX-x86_64.pkg。
- 更新康达:
conda update conda
- 安装 conda-build:
conda install conda-build
- 然后尝试构建 conda 配方:
conda install .
我在构建任何配方时都会收到此错误,例如,这是我正在尝试的一个:
build.sh 包含:
python - conda 构建失败,配方的“host”部分中 jinja2 变量的“>=”
我在原料的配方文件中使用了 jinja2 变量,但conda build
在与.host
requirements
>=
run
这个问题在配方部分不会发生。此外,在该host
部分中,如果
- 我不
>=
与变量一起使用 - 我将硬编码值与
>=
这是失败的康达配方 -
$ 猫食谱/meta.yaml
我在另一个文件中添加了变量-
$ cat conda_local_config.yaml
并使用此命令构建
失败了
这是完整的失败日志 -
如果我将配方文件修改为此
或者
构建工作正常!
编辑 - 我打开了一个针对 conda-build 的 github 问题以获得对此行为的官方答案 - https://github.com/conda/conda-build/issues/3544
python - 构建 conda 包:必须使用 conda-build > 2.0 重新构建包
我遇到了 conda 包装的问题。我使用某人的食谱来构建与 C++ 库的 python 绑定,libvips
. 当我运行构建(在新的 docker 映像中)时,出现以下错误:
首先,我确保 conda-build 是正确的版本,并glib
在构建感兴趣的实际包之前重新构建:
GLib 的安装运行良好,但下一次conda build
失败并出现同样的错误。这让我想知道glib
它是否指的是(在meta.yaml
下面requirements: build:
)与 condaglib
包不同以及如何指定包源。
linux - 使用 conda-build 创建包时如何精确 Perl 版本
我正在尝试为我拥有的 Perl 模块创建一个包,然后将其放在本地频道中,以便能够将其安装在 conda 环境中。我正在尝试遵循 conda 文档,但由于这是我第一次尝试这样做,所以我有点迷失了自己。
从头开始创建 conda 包的文档:https ://docs.conda.io/projects/conda-build/en/latest/user-guide/tutorials/build-pkgs.html
了解 meta.yaml 文件元数据的文档:https ://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-section
conda-build 的文档:https ://conda.io/projects/conda-build/en/latest/resources/commands/conda-build.html
所以首先我创建了一个包含 meta.yaml 文件和 build.sh 文件的配方。我的 conda 中包含的 Perl 版本是 5.26.2。但是 Perl 模块是用 Perl 5.18.2 编写的。我找不到修改 Perl 版本的方法...
我尝试过了 :
我还尝试在 meta.yaml 文件的需求部分中放入 Perl 的一些规范。
但是在这两种情况下(我也尝试以相同的结果更改要求的运行/构建部分)当我在 conda 环境中安装包时,控制台提示:
如您所见,包管理器想要安装 Perl 5.26.2。我想我的做法不对,但文档并没有真正帮助我,或者我没有找到相应的部分。
任何线索将不胜感激。
祝你早日/晚安!
编辑: 我能做什么?
使用我位于 usr/bin/Perl 的本地 Perl 吗?
从以下网址下载 Perl 5.18.2 包:https : //www.cpan.org/src/README.html 并以某种方式将其链接到 meta.yaml 文件中?
python-3.x - 当我的包是 Python 3.6 时,为什么 conda 要将所有内容降级到 Python 2.7?
我正在尝试将我们的应用程序升级到 Python 3,但无法让 conda 接受该包兼容。
该包似乎可以构建,并且似乎是一个 Python 3 包:
但是,当我使用 Python 3.6.8 创建一个全新的 conda 环境并尝试安装包时,我收到一条消息,即许多依赖项将降级到 Python 2.7。
我已经查过了,有些人建议明确指定 Python 版本,但这也不起作用。
我的包裹有什么问题?为什么 conda 不相信它是 Python 3 包?我需要在配方中进行哪些更改才能将其构建为 Python 3。
元.yaml
conda信息的输出
Conda build 命令确实指定了 Python 版本:
而当前的 conda 环境是 Python 3.6.8:
perl - 在安装 conda 包期间更新 @INC 变量
我正在尝试安装 Perl 模块的 conda 包。到目前为止,我可以使用conda-build
. 为此,我有一个包含 abuild.sh
和 ameta.yaml
文件的食谱。
然后我在新环境中安装它conda-install
,我希望能够运行位于我刚刚安装的 Perl 模块中的一些 Perl 脚本。
所有这些步骤都运行良好,但是当我运行一些脚本时,我有一个错误说:
Can't locate PMP/util.pm in @INC (you may need to install the PMP::util module) (@INC contains: /.autofs/home/antoine/anaconda2/envs/testCustomChannel/lib/site_perl/5.26.2/x86_64-linux-thread-multi /.autofs/home/antoine/anaconda2/envs/testCustomChannel/lib/site_perl/5.26.2 /.autofs/home/antoine/anaconda2/envs/testCustomChannel/lib/5.26.2/x86_64-linux-thread-multi /.autofs/home/antoine/anaconda2/envs/testCustomChannel/lib/5.26.2 .)
如您所见,当我执行 Perl 时,似乎无法识别我的 Perl 模块的某些模块。我知道要解决此问题,我可以修改 @INC 变量并将 bin/ 添加到 PATH 并将 lib/ 添加到 PERL5LIB,但我需要在安装模块期间自动执行此过程。
我真的不知道我应该在哪里修改环境变量。在创建包的过程中build.sh
,例如添加一些东西?或者我应该在安装过程中管理它,如果是这样,我该怎么做?
任何建议将不胜感激,
谢谢
编辑 :
元.yaml =>
构建.sh =>
编辑 2:
另一个可以帮助你们更好地了解我的情况的编辑。我刚刚意识到,当我构建包时,我所在的 perl 模块的 lib 文件夹PMP::util
位于lib/site_perl/5.26.0/Perl_Module
. 我很确定,如果我能够直接在lib/
文件夹下安装它,它将解决这个问题。但是我不确定如何修改 build.sh 文件来修改我们构建 perl 模块的位置。
python - 使用 conda 在 Windows 上构建 Python 包时出现奇怪的“拒绝访问”错误
我正在尝试构建Chaco
包,使用:
conda build --numpy=1.16 --use-local conda.recipe\chaco
我在构建过程中遇到了这个非常奇怪的错误:
但是,当我检查C:\ProgramData\Anaconda3\conda-bld\chaco_1566078508037\_h_env\Scripts\
目录的内容时,我看到了该fonttools.exe
文件:
所以,很明显,构建过程没有被拒绝访问。
当这第一次发生时,我想,“哦,哦!Anaconda3 安装损坏了。” 因此,我卸载了 Anaconda3,确保我在所有 Windows (7-Pro) 更新上都是最新的,重新启动并重新安装了 Anaconda3。我得到完全相同的错误!
我的conda.recipe\chaco\meta.yaml
文件内容,供参考:
我的bld.bat
:
根据这篇文章中的建议,我尝试卸载 Anaconda3 并重新安装“只为我”,这具有在我的主目录下安装 Anaconda3 的效果。行为没有变化:仍然收到同一文件的“访问被拒绝”错误:fonttools.exe
.
问题:有没有办法可以进入Chaco
构建目录并手动完成构建/上传,这样我就可以在等待帖子回复时发布此 PyBERT 更新的 Windows 版本?
python-3.x - 使用`conda build`时如何设置环境?
试图利用 Conda 的构建功能来安装不在 conda 存储库中的包。我已经下载了我想要的包的源文件。在同一级别,我为我的conda recipes创建了一个文件夹,其中包含meta.yaml
设置source: path: ../<package-name>
。因此,查找一个目录以找到源文件。这行得通。
当构建尝试测试导入包时,问题发生在最后。它说x module not found,但我conda build
从 conda 环境中调用,其中安装了丢失的包,如conda list
.
我如何知道在什么环境conda build
中执行这些测试?
使用时如何设置环境conda build
?
Conda Build文档中充满了environment一词无济于事,但这主要是指环境变量而不是conda 环境
gcc - `conda build gcc-5` 在 Mac OS Mojave 上失败
使用 conda,我似乎无法在 MacOS Mojave 上构建 gcc-5(或任何 gcc-X 版本)配方:
系统前置要求
- 安装 Xcode
- 命令行工具
- 安装头文件包(/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg)
- 运行 Xcode,完成安装。
康达先决条件
- 安装 Conda,conda-build
- 获取 conda 食谱:
做 Sysroot 的东西(按照 Anaconda 编译器构建的指示)
简而言之,这意味着:
- 下载 MacOSX10.9 SDK 并解压到 /opt/MacOSX10.9.sdk
- 构建 ~/.conda/conda_build_config.yaml
- 指示 conda 使用上述配置文件 (~/.condarc):
尝试构建 gcc-5:
上述构建失败。指向 Xcode 中的原子标头。我的假设是,Xcode 10.2.x 是否太新而无法构建如此古老的 gcc 编译器?我也尝试构建自己的 conda gcc-9 配方,但因缺少图像而失败(未找到/加载 dylib)。所以我想我真正的问题是,人们如何使用 conda build 来构建 gcc-X?我可以自己手动构建 GCC 9.2.0。但我想知道如何使用conda build 正确地做到这一点。
Stackoverflow 家伙的注意事项:我认为应该在 SuperUser 上问这个问题,但没有标签“conda”。每个人似乎都在这里发布康达问题......