简体   繁体   English

构建 conda 包:必须使用 conda-build > 2.0 重新构建该包

[英]Building conda package: The package must be rebuilt with conda-build > 2.0

I am running into a problem with conda packaging.我遇到了 conda 包装的问题。 I use someone's recipe to build a python binding to a C++ library, libvips .我使用某人的食谱来构建一个 python 绑定到 C++ 库libvips When I run a build (within a fresh docker image) I am getting following error:当我运行一个构建(在一个新的 docker 镜像中)时,我收到以下错误:

Build prefix failed with prefix length 255
WARNING:conda_build.environ:Build prefix failed with prefix length 255
WARNING conda_build.environ:create_env(877): Build prefix failed with prefix length 255
Error was:
WARNING:conda_build.environ:Error was:
WARNING conda_build.environ:create_env(878): Error was:
Placeholder of length '80' too short in package /opt/conda/conda-bld/libvips_1561659686802/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/bin/csslint-0.6.
The package must be rebuilt with conda-build > 2.0.

First of all, I made sure that conda-build is a right version, and re-build glib before building the actual package of interest:首先,我确保 conda-build 是一个正确的版本,并在构建感兴趣的实际包之前重新构建glib

conda build version:
conda-build 3.18.5
 ---> e0cee3638360
Step 11/12 : RUN conda install -c anaconda glib
 ---> Running in ba9e7daa8d74

The installation of GLib runs well, but the next conda build fails with the same error. GLib 的安装运行良好,但下一个conda build失败并出现相同的错误。 This leaves me wondering whether glib it is referring to (in meta.yaml under requirements: build: ) is different from conda glib package and how to specify the package source.这让我想知道它所指的glib是否与meta.yaml glib包不同以及如何指定包源(在meta.yaml requirements: build: )。

libvips and pyvips now have official conda packages . libvips 和 pyvips 现在有官方的 conda 包 You should just be able to do:你应该能够做到:

conda install --channel conda-forge pyvips

And it'll download and install everything.它会下载并安装所有东西。

It includes a libvips binary with most optional packages enabled, including things like openslide and matio .它包含一个 libvips 二进制文件,其中启用了大多数可选包,包括openslidematio类的东西。 It is currently missing libheif and libjpeg-turbo , but perhaps they will come.它目前缺少libheiflibjpeg-turbo ,但也许它们会来。

Windows support is blocked on gdk-pixbuf , unfortunately.不幸的是,Windows 支持在gdk-pixbuf上被阻止。 The pyvips README has some notes on Windows install. pyvips README有一些关于 Windows 安装的说明。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM