menpo / conda-suitesparse

Building Suite Sparse For Conda
2 stars 0 forks source link

BLAS / LAPACK dependencies #1

Open florian-wagner opened 9 years ago

florian-wagner commented 9 years ago

Thanks a lot for creating this recipe. Though it seems, it is still dependent on a non-conda system-wide blas/lapack installation and cannot find metis (which I previously installed from the binstar menpo channel).

ldd -d ~/miniconda3/pkgs/suitesparse-4.4.1-0/lib/libcholmod.so                                  
        linux-vdso.so.1 =>  (0x00007ffdbd600000)
        libmetis.so => not found
        libamd.so => /home/fwagner/miniconda3/pkgs/suitesparse-4.4.1-0/lib/./libamd.so (0x00007f9fa8838000)
        libcamd.so => /home/fwagner/miniconda3/pkgs/suitesparse-4.4.1-0/lib/./libcamd.so (0x00007f9fa8628000)
        libcolamd.so => /home/fwagner/miniconda3/pkgs/suitesparse-4.4.1-0/lib/./libcolamd.so (0x00007f9fa8418000)
        libccolamd.so => /home/fwagner/miniconda3/pkgs/suitesparse-4.4.1-0/lib/./libccolamd.so (0x00007f9fa8208000)
        liblapack.so.3 => /local/lib/liblapack.so.3 (0x00007f9fa7a68000)
        libblas.so.3 => /local/lib/libblas.so.3 (0x00007f9fa6258000)
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f9fa6050000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f9fa5c88000)
        libgfortran.so.3 => /usr/lib/x86_64-linux-gnu/libgfortran.so.3 (0x00007f9fa5960000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f9fa5658000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f9fa5440000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f9fa5220000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f9fa8d78000)
        libquadmath.so.0 => /usr/lib/x86_64-linux-gnu/libquadmath.so.0 (0x00007f9fa4fe0000)

Any ideas?

patricksnape commented 9 years ago

Sorry for the late response, I really think that Github's notifications are terrible! It's either all or nothing...

Anyway, I have to admit that this repository is still slightly experimental because building suitesparse is very complicated. Especially if you want the build to be cross-platform as I do. However, shipping a custom BLAS/LAPACK version is an even bigger headache than suitesparse itself. I think by default I was choosing to build against atlas because that is available via apt-get on Ubuntu. I'm unsure about libmetis.so being missing, I'll take a look tomorrow morning when I am at the office again!

florian-wagner commented 9 years ago

Thanks a lot! For linux atlas is also available as a conda-package: https://anaconda.org/anaconda/atlas

florian-wagner commented 9 years ago

@patricksnape I think building against the atlas from apt-get is not compatible when making the conda package on 12.04, and trying to install it on 14.04 or the other way round. There was some renaming of the libraries.

patricksnape commented 9 years ago

Right, didn't catch you were on 12.04. Yeah, this is, in general, part of the problem with distributing binaries across systems. I only support 14.04 as that is the most recent LTS :(

You could always update the script to be more complicated and try to add in specific cases for 12.04?

florian-wagner commented 9 years ago

Yes that seems necessary. I would not mind too much, but Tavis still uses Ubuntu 12.04 and the service is used by a lot of projects for continuous integration.