On 2015-01-29 17:08, Maarten wrote:
Hello again,

I installed everything again locally from scratch, including anaconda. I made sure $LD_LIBRARY_PATH was empty before installing anything, as this seemed to be the culprit indeed. This time 'import dolfin' worked without problems, just as a demo I tried \o/

I have tried the (apparently outdated) dorsal script, the (not-yet-for-every-platform) new install script — compiling all packages from scratch, but now it finally works! Granted, CentOS might not be the most thankful platform to support, but I think anaconda and this FEniCS package will make life a lot easier for the not-entirely-familiar-with-linux-yet folks like me.

Thanks!

Maarten

Oh I am so happy to read that! :D Thank you very much for your patience and perseveration, I have learned a lot of things about compilation and dynamic linking thanks to this and I am glad it finally helped you.

Good luck with your Linux & FEniCS journey :) Hope this long discussion helps others too!

Regards,

Juan Luis


On 28 January 2015 at 23:12, Juan Luis Cano <[email protected] <mailto:[email protected]>> wrote:

    On 2015-01-28 14:22, Maarten wrote:
    Almost there (I hope)! I removed everything (step 7) and
    installed again with "conda install "fenics=1.4.0" mkl --channel
    https://conda.binstar.org/juanlu001/channel/fenics:1.4.0:centos";.
    Here is the result again.

        >>> import dolfin
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
          File
        
"<INSTALL_PATH>/anaconda/lib/python2.7/site-packages/dolfin/__init__.py",
        line 16, in <module>
            import cpp
          File
        
"<INSTALL_PATH>/anaconda/lib/python2.7/site-packages/dolfin/cpp/__init__.py",
        line 42, in <module>
            exec("import %s" % module_name)
          File "<string>", line 1, in <module>
          File
        
"<INSTALL_PATH>/anaconda/lib/python2.7/site-packages/dolfin/cpp/common.py",
        line 32, in <module>
            _common = swig_import_helper()
          File
        
"<INSTALL_PATH>/anaconda/lib/python2.7/site-packages/dolfin/cpp/common.py",
        line 28, in swig_import_helper
            _mod = imp.load_module('_common', fp, pathname, description)
        ImportError:
        
<OTHER_INSTALL_PATH>/bin/opt/intel/ifc12.1/composer_xe_2011_sp1.9.293/mkl/lib/intel64/libmkl_sequential.so:
        undefined symbol: mkl_serv_mkl_print


    Hoping this will be the last hurdle.

    Hmmm... I am afraid this will be a harder one :/

    The problem is that you already have a working MKL in your system
    (in
    <OTHER_INSTALL_PATH>/bin/opt/intel/ifc12.1/composer_xe_2011_sp1.9.293/mkl/)
    and thus dolfin is ignoring the one in
    <INSTALL_PATH>/anaconda/lib/. Some version mismatch is probably
    causing the problem.

    I guess your output of

    $ ldd .../_common.so | grep libmkl_sequential.so

    points to <OTHER_INSTALL_PATH>. The only thing I can think of is
    that you may have a non empty $LD_LIBRARY_PATH, and this is
    modifying the directories where the libraries are looked up. If I
    am correct, stripping the corresponding path from $LD_LIBRARY_PATH
    and repeating the ldd step should yield the MKL libraries located
    in the conda environment. I might not be correct though, and
    perhaps there is something I misunderstood from the conda building
    process...

    In case this doesn't work, I don't really know what else you can
    do. The only other thing I can suggest you is removing the conda
    mkl package and rebuilding petsc, petsc4py and dolfin yourself. In
    petsc/build.sh, you have to change "--with-blas-lapack-dir", and
    in dolfin/build.sh you have to change BLAS_DIR. (Also, you have to
    remove "mkl" from all the recipes).

    If you start rebuilding the packages, conda will try to build the
    dependencies recursively. In case you want to avoid this, you
    should add my channel to the list of default channels:

    $ conda config --add channel
    https://conda.binstar.org/juanlu001/channel/fenics:1.4.0:centos

    Lastly, make sure you increment the build numbers in */meta.yaml
    to avoid problems with the cached packages, as happened with boost
    (that one was my fault).

    Good luck!

    Juan Luis Cano



_______________________________________________
fenics-support mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics-support

Reply via email to