[yt-dev] conda and external libraries

Nathan Goldbaum nathan12343 at gmail.com
Tue Oct 22 08:59:29 PDT 2013


I believe the issue is that your FFTW wrappers are linked against your
system libm while you should be linking then against the libraries provided
by conda if you want to use it with that python install.

You might want to consider writing a conda recipe for your wrappers.
 Building a conda package from such a recipe will ensure that it is linking
with anaconda's libraries since conda package builds happen in an isolated
environment.

I agree that there are issues on Linux with anaconda and binary
compatibility and that it's not totally obvious to newcomers how to use
anaconda python if they also want to build their own packages under it.
 However, given that it simplifies the installation process and gives users
an out-of-the box yt install with significantly less hassle than the
install script and with very little maintenance on our end, I still think
it's the way to go moving forward.

If you're going to be doing a lot of development, anaconda's python may not
be the best choice.  Instead, you might consider building yt and all it's
dependencies using the Ubuntu's system python and packages.

Cheers,

Nathan

On Tuesday, October 22, 2013, j s oishi wrote:

> daikaiju:/data/../96_Ra10000 [10:39]$ python 2d_gmode_kx1_kz1.py
>
>
> Traceback (most recent call last):
>   File "2d_gmode_kx1_kz1.py", line 26, in <module>
>     from dedalus.mods import *
>   File "/home/jsoishi/hg-projects/dedalus/dedalus/mods.py", line 30, in
> <module>
>     from dedalus.utils.logger import mylog
>   File "/home/jsoishi/hg-projects/dedalus/dedalus/utils/logger.py", line
> 30, in <module>
>     from dedalus.utils.parallelism import com_sys
>   File "/home/jsoishi/hg-projects/dedalus/dedalus/utils/parallelism.py",
> line 52, in <module>
>     com_sys = CommunicationSystem()
>   File "/home/jsoishi/hg-projects/dedalus/dedalus/utils/parallelism.py",
> line 43, in __init__
>     from dedalus.utils.fftw import fftw
> ImportError: /home/jsoishi/build/yt-conda/bin/../lib/libm.so.6: version
> `GLIBC_2.15' not found (required by /home/jsoishi/build/lib/libfftw3.so.3)
>
>
>
> On Tue, Oct 22, 2013 at 11:39 AM, Nathan Goldbaum <nathan12343 at gmail.com<javascript:_e({}, 'cvml', 'nathan12343 at gmail.com');>
> > wrote:
>
>> Hi Jeff,
>>
>> Can you paste the error messages you're seeing?
>>
>> Nathan
>>
>>
>> On Tuesday, October 22, 2013, j s oishi wrote:
>>
>>> Hi all,
>>>
>>> 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 happening myself.
>>>
>>> thanks,
>>>
>>> j
>>>
>>
>> _______________________________________________
>> yt-dev mailing list
>> yt-dev at lists.spacepope.org <javascript:_e({}, 'cvml',
>> 'yt-dev at lists.spacepope.org');>
>> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20131022/a5b5beab/attachment.html>


More information about the yt-dev mailing list