【发布时间】:2021-06-17 23:07:21
【问题描述】:
当我尝试构建 conda 包时遇到一个奇怪的错误。
$ conda-build pkg2
....
Found conflicts! Looking for incompatible packages.
This can take several minutes. Press CTRL-C to abort.
failed
....
The following specifications were found to be incompatible with your system:
- feature:/linux-64::__glibc==2.17=0
- feature:|@/linux-64::__glibc==2.17=0
- pkg1 -> __glibc[version='>=2.17,<3.0.a0']
Your installed version is: 2.17
在我看来,glibc 2.17 似乎满足所有三个要求,但 conda 认为存在冲突。
澄清一下,pkg2 依赖于我在本地构建的另一个包,pkg1。 pkg1 是一个带有 python 接口的 C++ 库,它依赖于 libfftw。我在 conda 上找不到 libfftw,所以必须通过 yum 在构建主机上安装它,它使用 glibc 2.17 运行 CentOS7,因此存在依赖关系。
在pkg1 meta.yaml 我有:
requirements:
build:
- sysroot_linux-64 >=2.17 [linux]
pkg2 meta.yaml:
requirements:
host:
- pkg1
run:
- pkg1
【问题讨论】:
-
"我在 conda 上找不到 libfftw" - 它只是
fftw,但在包中包含库和包含头文件。
标签: python build conda glibc conda-build