I get a weird error when I try to build a conda package.
$ 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
It looks to me as if glibc 2.17
satisfies all three requirements, however conda thinks there is a conflict.
To clarify, pkg2
depends on another package that I have built locally, pkg1
. pkg1
is a C++ library with a python interface, that depends on libfftw
. I could not find libfftw
on conda, so had to install it via yum on the build host, which runs CentOS7 with glibc 2.17
, hence the dependency.
In pkg1
meta.yaml
I have:
requirements:
build:
- sysroot_linux-64 >=2.17 [linux]
pkg2 meta.yaml
:
requirements:
host:
- pkg1
run:
- pkg1
Thanks @merv for the fftw
tip.
I strongly suspect that the issue was caused by a mixture of packages from conda-forge
and Anaconda default
channels in the same environment. According to conda developers, this is considered a bad practice. Once I have changed it around to using conda-forge
only, the problems went away.