NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
18.21k stars 14.21k forks source link

ATLAS build fail on darwin #10808

Closed davidak closed 9 years ago

davidak commented 9 years ago

i tried to build ATLAS on darwin since it is marked to review in the broken darwin packages page. build all the dependencies takes about 6 hours and then fails with a Segmentation fault.

my system is OS X 10.9.5 on an Intel Core i5.

cc @jwiegley @pikajude @ttuegel

/nix/store/y4cx4hiv40yc0xkz1as4lkbvk89k9ygg-gfortran-5.1.0/bin/gfortran -fomit-frame-pointer -mfpmath=sse -O2 -msse2 -fPIC -m64 -o xzuumtst zuumtst.o \
                   /private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/lib/libtstatlas.a /private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/lib/liblapack.a /private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/lib/libcblas.a /private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/lib/libf77blas.a \
                   /private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/lib/libatlas.a -lm
/private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/bin/ATLrun.sh /private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/bin xzslvtst -n 167 -r 83 -O 2 c r \
                  >> /private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/bin/sanity.out
/private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/bin/ATLrun.sh: line 4:  2363 Segmentation fault: 11  $atldir/$*
Makefile:9114: recipe for target 'zsanity_test' failed
make[3]: *** [zsanity_test] Error 139
make[3]: Leaving directory '/private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/bin'
Makefile:375: recipe for target 'sanity_test' failed
make[2]: *** [sanity_test] Error 2
make[2]: Leaving directory '/private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build/bin'
Make.top:27: recipe for target 'sanity_test' failed
make[1]: *** [sanity_test] Error 2
make[1]: Leaving directory '/private/var/folders/g0/80z2tlp95k3gdmx68vhslfl80000gn/T/nix-build-atlas-3.10.2-with-lapack.drv-0/ATLAS/build'
Makefile:577: recipe for target 'test' failed
make: *** [test] Error 2
builder for ‘/nix/store/9qzmkqil529v6d6aj6y1b2k3rar2wq2n-atlas-3.10.2-with-lapack.drv’ failed with exit code 2
error: build of ‘/nix/store/9qzmkqil529v6d6aj6y1b2k3rar2wq2n-atlas-3.10.2-with-lapack.drv’ failed
vcunat commented 9 years ago

AFAIK most packages have been switched to openblas. It might be easier to switch what you need than to try fix atlas.

ttuegel commented 9 years ago

Speaking as a maintainer of OpenBLAS and ATLAS in Nixpkgs and a user of both, OpenBLAS is superior to ATLAS in almost every way. This is particularly true from the perspective of binary caches. The binary cache version of ATLAS is optimized for whichever Hydra node it is built on. OpenBLAS uses dynamic architecture detection so the binary cache version will be well-optimized for all the platforms we support. OpenBLAS should be a drop-in replacement for any package using ATLAS; I strongly encourage switching.

davidak commented 9 years ago

then we should not try to fix it and simply remove darwin from the platforms.

vcunat commented 9 years ago

It has no platforms set. We might put in some list where it works sensibly (the two Linux platforms?), or perhaps better set broken = true; to express it shan't be supported?