So I've been playing with the new conda installed yt. In principle, I
really like the idea: a simple, completely isolated python distribution
that does dependency management. However, I'm running into some problems
that are potentially big problems for yt down the road. My issue is that
I'm trying to install Dedalus into the yt-provided conda install. However,
to do that, I need to interface with external libraries--ones that I do
*not* want to have built as conda packages. The two that come up first are
MPI and FFTW. Since the Dedalus FFTW bindings are actually used in yt for
its FFT analysis, this is relevant for yt too.
On a supercomputing center, one would very much want to use their MPI and
FFT libraries, rather than some binary blob from conda, I think we need to
figure out how to do this. The problem I'm getting specifically is that if
I build FFTW (for example) myself, I want to link against the system libm.
But conda provides its OWN libm, which, it turns out is not GLIBC
compatible with what FFTW was built against. I believe this is because libm
from conda was not built against the same glibc as my libm, which FFTW was
built against. I don't know how to solve this problem, since I don't really
understand dynamic libraries, nor conda. Does anyone have any ideas about
this? Is this something I should take up with the conda list?
My apologies if this is unclear. I am not fully sure I understand what is