Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 546858 - sci-libs/scipy-0.15.1 ebuild fails due to "missing" lapack/blas: No package 'cblas' found
Summary: sci-libs/scipy-0.15.1 ebuild fails due to "missing" lapack/blas: No package '...
Status: RESOLVED DUPLICATE of bug 595712
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-04-17 03:11 UTC by Mark Locascio
Modified: 2017-01-31 17:10 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Build log (build.log,8.40 KB, text/x-log)
2015-04-20 03:55 UTC, Mark Locascio
Details
Build log (build.log,7.87 KB, text/x-log)
2015-04-21 09:28 UTC, Stephen Bosch
Details
/var/tmp/portage/sci-libs/scipy-0.15.1/work/scipy-0.15.1-python3_3/site.cfg (site.cfg,176 bytes, text/plain)
2015-04-21 14:34 UTC, Stephen Bosch
Details
build.log (build.log,9.78 KB, text/x-log)
2015-07-28 23:31 UTC, Rick Farina (Zero_Chaos)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Locascio 2015-04-17 03:11:52 UTC
I've had scipy installed for years, so I should have most of the dependencies already. The recent update to scipy-0.15.1 from 0.14.0-r1 fails to build, though, because it can't seem to find blas and/or lapack. Both libraries are installed.

Reproducible: Always

Steps to Reproduce:
1. Try to install scipy 0.15.1
Actual Results:  
Ebuild fails

Expected Results:  
Ebuild builds

Portage 2.2.14 (python 2.7.9-final-0, default/linux/amd64/13.0/desktop/gnome/systemd, gcc-4.8.4, glibc-2.20-r2, 3.14.14-gentoo x86_64)
=================================================================
System uname: Linux-3.14.14-gentoo-x86_64-Intel-R-_Core-TM-_i7_CPU_920_@_2.67GHz-with-gentoo-2.2
KiB Mem:     6102616 total,   1791448 free
KiB Swap:    2120444 total,   2120444 free
Timestamp of tree: Fri, 17 Apr 2015 00:15:01 +0000
ld GNU ld (Gentoo 2.24 p1.4) 2.24
app-shells/bash:          4.2_p53
dev-java/java-config:     2.2.0
dev-lang/perl:            5.20.2
dev-lang/python:          2.7.9-r1, 3.3.5-r1, 3.4.1
dev-util/cmake:           2.8.12.2-r1
dev-util/pkgconfig:       0.28-r2
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.11
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.10.3-r1, 1.11.6-r1, 1.13.4
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.7.3-r1, 4.8.4
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.6
sys-devel/make:           4.1-r1
sys-kernel/linux-headers: 3.18 (virtual/os-headers)
sys-libs/glibc:           2.20-r2
Repositories: gentoo steam-overlay
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=core2 -msse4 -msse4.1 -msse4.2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=core2 -msse4 -msse4.1 -msse4.2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://gentoo.chem.wisc.edu/gentoo http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j9"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/steam-overlay"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="X a52 aac acpi alisp alsa amd64 apng bash-completion berkdb branding bzip2 cairo caps cdda cddb cdr cli colord cracklib crypt cups cxx dbus device-mapper djvu dri dts dvb dvd dvdr eds emacs emboss encode evo exif extras fam ffmpeg fftw firefox flac fltk fontconfig fortran fuse gcj gd gdbm gif glamor gmp gnome gnome-keyring gnome-online-accounts gnutls gpm gstreamer gtk gudev guile iconv id3tag introspection ipv6 jack java joystick jpeg kde lame lapack latex lcms ldap libnotify libsamplerate libsecret mad matplotlib matroska mikmod minizip mmx mmxext mng mod modules mono mp3 mp4 mpeg multilib mysql nautilus ncurses networking networkmanager nls nptl nsplugin ntfsprogs ogg opengl openmp pam pango pcre pdf plotutils png policykit postscript ppds pulseaudio python qt3support qt4 readline samba sasl sdl session smp socialweb spell sqlite sse sse2 ssl startup-notification svg systemd tcpd theora threads tiff tk truetype twolame udev udisks unicode upower usb v4l v4l2 vorbis wxwidgets x264 xcb xinerama xml xv xvid zlib" ABI_X86="64" ALSA_CARDS="emu10k1x" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Mark Locascio 2015-04-17 03:13:58 UTC
Forgot to mention, this appears to be similar to bug 469116, but not quite the same:  https://bugs.gentoo.org/show_bug.cgi?id=469116

Someone more knowledgeable than I am will have to make the call on whether or not it's a duplicate.
Comment 2 Mike Gilbert gentoo-dev 2015-04-20 01:39:53 UTC
Please attach a build log.
Comment 3 Mark Locascio 2015-04-20 03:55:18 UTC
Created attachment 401650 [details]
Build log
Comment 4 Mark Locascio 2015-04-20 03:58:04 UTC
Sorry about that, added a build log. Also:

# emerge -pqv '=sci-libs/scipy-0.15.1::gentoo'
[ebuild     U ] sci-libs/scipy-0.15.1 [0.14.0-r1] USE="-doc -sparse {-test}" PYTHON_TARGETS="python2_7 python3_3 -python3_4"
Comment 5 Justin Lecher (RETIRED) gentoo-dev 2015-04-20 19:14:38 UTC
what does 

eselect lapack list,
eselect blas list, 
eix lapack, 
eix blas, 
pkg-config --libs lapack blas

 say?
Comment 6 Mark Locascio 2015-04-21 03:13:29 UTC
It's all below. There's some garbage in there, I didn't bother editing it out.

# eselect lapack list
Installed LAPACK for library directory lib64
  [1]   reference *

# eselect blas list
Installed BLAS for library directory lib64
  [1]   reference *

# eix lapack
* app-doc/lapack-docs
     Available versions:  3.1.1
     Homepage:            http://www.netlib.org/lapack
     Description:         Documentation reference and man pages for lapack implementations

[I] app-eselect/eselect-lapack
     Available versions:  0.1
     Installed versions:  0.1(07:54:10 PM 03/31/2015)
     Homepage:            http://www.gentoo.org/proj/en/eselect/
     Description:         LAPACK module for eselect

* sci-libs/clapack
     Available versions:  3.2.1-r6 ~3.2.1-r7 ~3.2.1-r8 {test}
     Homepage:            http://www.netlib.org/clapack/
     Description:         f2c'ed version of LAPACK

[I] sci-libs/lapack-reference
     Available versions:  3.1.1-r1 ~3.2.1-r1 **3.2.1-r3 {doc}
     Installed versions:  3.1.1-r1(07:07:31 PM 12/16/2010)(-doc)
     Homepage:            http://www.netlib.org/lapack/index.html
     Description:         FORTRAN reference implementation of LAPACK Linear Algebra PACKage

* sci-libs/scalapack
     Available versions:  ~2.0.2 {static-libs test}
     Homepage:            http://www.netlib.org/scalapack/
     Description:         Subset of LAPACK routines redesigned for heterogenous (MPI) computing

[I] virtual/lapack
     Available versions:  3.0 3.1
     Installed versions:  3.1(08:08:39 PM 06/29/2009)
     Description:         Virtual for Linear Algebra Package FORTRAN 77 (LAPACK) implementation

Found 6 matches.

# eix blas
* app-doc/blas-docs
     Available versions:  3.1.1
     Homepage:            http://www.netlib.org/blas
     Description:         Documentation reference and man pages for blas implementations

[I] app-eselect/eselect-blas
     Available versions:  0.1
     Installed versions:  0.1(07:54:10 PM 03/31/2015)
     Homepage:            http://www.gentoo.org/proj/en/eselect/
     Description:         BLAS module for eselect

[I] app-eselect/eselect-cblas
     Available versions:  0.1
     Installed versions:  0.1(07:54:10 PM 03/31/2015)
     Homepage:            http://www.gentoo.org/proj/en/eselect/
     Description:         C-language BLAS module for eselect

* app-leechcraft/lc-blasq
     Available versions:  0.6.60 ~0.6.65 ~0.6.70 **9999 {+deathnote debug +rappor +spegnersi +vangog}
     Homepage:            http://leechcraft.org/
     Description:         Cloud image storage services client (like Flickr or Picasa)

* dev-lang/blassic
     Available versions:  0.10.2 {X}
     Homepage:            http://blassic.org
     Description:         classic Basic interpreter

* games-action/xblast
     Available versions:  2.10.4
     Homepage:            http://xblast.sourceforge.net/
     Description:         Bomberman clone w/network support for up to 6 players

* games-arcade/marbleblast-demo
     Available versions:  ~1.3^s
     Homepage:            http://www.garagegames.com/pg/product/view.php?id=3
     Description:         race marbles through crazy stages

* games-arcade/marbleblastgold-demo
     Available versions:  ~1.4.1^s
     Homepage:            http://www.garagegames.com/pg/product/view.php?id=15
     Description:         race marbles through crazy stages

* media-libs/liblastfm
     Available versions:  1.0.8^t ~1.0.9(0/0)^t {fingerprint +qt4 qt5 test}
     Homepage:            https://github.com/lastfm/liblastfm
     Description:         Collection of libraries to integrate Last.fm services

* media-sound/mp3blaster
     Available versions:  3.2.5 3.2.5-r1 {lirc oss sdl sid vorbis}
     Homepage:            http://mp3blaster.sourceforge.net/
     Description:         Text console based program for playing audio files

* sci-biology/rmblast
     Available versions:  ~1.2 ~1.2-r1
     Homepage:            http://www.repeatmasker.org/RMBlast.html
     Description:         RepeatMasker compatible version of NCBI BLAST+

* sci-biology/update-blastdb
     Available versions:  ~12.0.0
     Homepage:            http://www.ncbi.nlm.nih.gov/books/bv.fcgi?rid=toolkit
     Description:         update_blastdb.pl for local blast db maintainance

[I] sci-libs/blas-reference
     Available versions:  20070226 ~20070226-r2 **20070226-r3 {doc}
     Installed versions:  20070226(07:05:35 PM 12/16/2010)(-doc)
     Homepage:            http://www.netlib.org/blas/
     Description:         Basic Linear Algebra Subprograms F77 reference implementations

* sci-libs/cblas-reference
     Available versions:  20030223-r4 ~20030223-r5
     Homepage:            http://www.netlib.org/blas/
     Description:         C wrapper interface to the F77 reference BLAS implementation

[I] virtual/blas
     Available versions:  1.0
     Installed versions:  1.0(07:48:28 PM 06/29/2009)
     Description:         Virtual for FORTRAN 77 BLAS implementation

[I] virtual/cblas
     Available versions:  1.0
     Installed versions:  1.0(08:08:41 PM 06/29/2009)
     Description:         Virtual for BLAS C implementation

Found 16 matches.

# pkg-config --libs lapack blas
-llapack -lblas
Comment 7 Stephen Bosch 2015-04-21 09:24:44 UTC
This has broken for me as well. Like Mark I have been using scipy for years. After some recent updates, I discovered that my numpy was broken (I get a failure on import). A rebuild fixed only some of the problems, so I attempted to rebuild sci-libs/scipy-15.1, which failed (see attached build.log).

One possible difference: I am using blas and lapack from the science overlay. This is pretty much a necessity because the eselect modules in the main tree are not working very well (see https://forums.gentoo.org/viewtopic-p-948248.html#948248)

Here is the output of

eselect lapack list,
eselect blas list, 
eix lapack, 
eix blas, 
pkg-config --libs lapack blas

------------------
eselect lapack list:
Available providers for lapack:
  [1]   reference *
------------------
eselect blas list:
Available providers for blas:
  [1]   openblas-threads
  [2]   reference *
------------------
eix lapack:
* app-doc/lapack-docs
     Available versions:  3.1.1 ~3.3-r1[1]
     Homepage:            http://www.netlib.org/lapack/
     Description:         Documentation reference and man pages for LAPACK implementations

* app-doc/scalapack-docs [1]
     Available versions:  ~2.0
     Homepage:            http://www.netlib.org/scalapack/
     Description:         Documentation reference and man pages for ScaLAPACK implementations

* app-eselect/eselect-lapack
     Available versions:  0.1
     Homepage:            http://www.gentoo.org/proj/en/eselect/
     Description:         LAPACK module for eselect

* sci-libs/clapack
     Available versions:  3.2.1-r6 ~3.2.1-r7 ~3.2.1-r8 {test}
     Homepage:            http://www.netlib.org/clapack/
     Description:         f2c'ed version of LAPACK

[I] sci-libs/lapack-reference
     Available versions:  3.1.1-r1 ~3.2.1-r1 **3.2.1-r3 (~)3.4.2[1] (~)3.5.0[1] **9999[1] {doc int64 static-libs test xblas ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32"}
     Installed versions:  3.5.0[1](16:16:15 04/17/15)(-int64 -static-libs -test -xblas ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")
     Homepage:            http://www.netlib.org/lapack/
     Description:         Reference implementation of LAPACK

* sci-libs/scalapack
     Available versions:  ~2.0.2 ~2.0.2-r1[1] {static-libs test}
     Homepage:            http://www.netlib.org/scalapack/
     Description:         Subset of LAPACK routines redesigned for heterogenous computing

* sci-libs/lapacke-reference [1]
     Available versions:  ~3.4.2 ~3.5.0 **9999 {static-libs test tmg xblas}
     Homepage:            http://www.netlib.org/lapack/
     Description:         C Interface to LAPACK

* sci-libs/lapackpp [1]
     Available versions:  ~2.5.4 {doc static-libs}
     Homepage:            http://lapackpp.sourceforge.net
     Description:         C++ wrapper for LAPACK libraries

[I] virtual/lapack
     Available versions:  3.0 3.1 ~3.4-r1[1] ~3.5-r1[1] (~)3.5-r2[1] {doc int64}
     Installed versions:  3.5-r2[1](16:16:24 04/17/15)(-doc -int64)
     Description:         Virtual for Linear Algebra Package FORTRAN 77 implementation

* virtual/lapacke [1]
     Available versions:  ~1.0 ~3.5
     Description:         Virtual for LAPACK C implementation

* virtual/scalapack [1]
     Available versions:  ~2.0 {doc}
     Description:         Virtual for ScaLAPACK implementation

[1] "science" /var/lib/layman/science

Found 11 matches.
------------------
eix blas:
* app-doc/blas-docs
     Available versions:  3.1.1 ~3.3[2]
     Homepage:            http://www.netlib.org/blas/
     Description:         Documentation reference and man pages for blas implementations

* app-eselect/eselect-blas
     Available versions:  0.1
     Homepage:            http://www.gentoo.org/proj/en/eselect/
     Description:         BLAS module for eselect

* app-eselect/eselect-cblas
     Available versions:  0.1
     Homepage:            http://www.gentoo.org/proj/en/eselect/
     Description:         C-language BLAS module for eselect

* app-leechcraft/lc-blasq
     Available versions:  0.6.60 ~0.6.65 ~0.6.70 **9999 {+deathnote debug +rappor +spegnersi +vangog}
     Homepage:            http://leechcraft.org/
     Description:         Cloud image storage services client (like Flickr or Picasa)

* dev-lang/blassic
     Available versions:  0.10.2 {X}
     Homepage:            http://blassic.org
     Description:         classic Basic interpreter

* games-action/xblast
     Available versions:  2.10.4
     Homepage:            http://xblast.sourceforge.net/
     Description:         Bomberman clone w/network support for up to 6 players

* games-arcade/marbleblast-demo
     Available versions:  ~1.3^s
     Homepage:            http://www.garagegames.com/pg/product/view.php?id=3
     Description:         race marbles through crazy stages

* games-arcade/marbleblastgold-demo
     Available versions:  ~1.4.1^s
     Homepage:            http://www.garagegames.com/pg/product/view.php?id=15
     Description:         race marbles through crazy stages

* media-libs/liblastfm
     Available versions:  1.0.8^t ~1.0.9(0/0)^t **9999(0/0)^t[1] {fingerprint +qt4 qt5 test}
     Homepage:            http://github.com/eartle/liblastfm
     Description:         Collection of libraries to integrate Last.fm services

* media-sound/mp3blaster
     Available versions:  3.2.5 3.2.5-r1 {lirc oss sdl sid vorbis}
     Homepage:            http://mp3blaster.sourceforge.net/
     Description:         Text console based program for playing audio files

* sci-biology/rmblast
     Available versions:  ~1.2 ~1.2-r1
     Homepage:            http://www.repeatmasker.org/RMBlast.html
     Description:         RepeatMasker compatible version of NCBI BLAST+

* sci-biology/update-blastdb
     Available versions:  ~12.0.0
     Homepage:            http://www.ncbi.nlm.nih.gov/books/bv.fcgi?rid=toolkit
     Description:         update_blastdb.pl for local blast db maintainance

* sci-biology/blasr [2]
     Available versions:  **9999
     Homepage:            http://www.smrtcommunity.com/SMRT-Analysis/Algorithms/BLASR
     Description:         The PacBio long read aligner

* sci-biology/mgblast [2]
     Available versions:  **0.1
     Homepage:            http://compbio.dfci.harvard.edu/tgi/software/
     Description:         Customized version of megablast from TIGR Gene Indices project used by tgicl and gicl utilities

[I] sci-libs/blas-reference
     Available versions:  [M]20070226 [M]~20070226-r2 [M]**20070226-r3 ~20131116[2] (~)20131116-r1[2] **99999999[2] {doc int64 static-libs test ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32"}
     Installed versions:  20131116-r1[2](09:46:32 04/16/15)(-int64 -static-libs -test ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")
     Homepage:            http://www.netlib.org/lapack/
     Description:         Reference implementation of BLAS

* sci-libs/cblas-reference
     Available versions:  20030223-r4 ~20030223-r5 ~20110218[2] ~20110218-r1[2] {int64 static-libs ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32"}
     Homepage:            http://www.netlib.org/blas/
     Description:         C wrapper interface to the F77 reference BLAS implementation

* sci-libs/blastdb [2]
     Available versions:  **9999^bs
     Homepage:            http://blast.ncbi.nlm.nih.gov/Blast.cgi?CMD=Web&PAGE_TYPE=BlastDocs&DOC_TYPE=ProgSelectionGuide
     Description:         The BLAST NR database

* sci-libs/gotoblas2 [2]
     Available versions:  ~1.13 {dynamic +incblas int64 openmp static-libs threads}
     Homepage:            http://www.tacc.utexas.edu/tacc-projects/gotoblas2/
     Description:         Fast implementations of the Basic Linear Algebra Subroutines

[I] sci-libs/openblas [2]
     Available versions:  ~0.2.8 ~0.2.11 (~)0.2.12 **9999 {dynamic int64 openmp static-libs threads ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32"}
     Installed versions:  0.2.12(10:01:58 04/16/15)(openmp threads -dynamic -int64 -static-libs ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")
     Homepage:            http://xianyi.github.com/OpenBLAS/
     Description:         Optimized BLAS library based on GotoBLAS2

* sci-libs/xblas [2]
     Available versions:  ~1.0.248 ~1.0.248-r1 {doc fortran int64 static-libs ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32"}
     Homepage:            http://www.netlib.org/xblas
     Description:         Extra Precise Basic Linear Algebra Subroutines

[I] virtual/blas
     Available versions:  1.0 ~2.1-r1[2] ~2.1-r2[2] (~)2.1-r3[2] {doc int64}
     Installed versions:  2.1-r3[2](09:46:48 04/16/15)(-doc -int64)
     Description:         Virtual for FORTRAN 77 BLAS implementation

[I] virtual/cblas
     Available versions:  1.0 ~2.0[2] ~2.0-r1[2] (~)2.0-r2[2] {int64}
     Installed versions:  2.0-r2[2](10:02:05 04/16/15)(-int64)
     Description:         Virtual for BLAS C implementation

[1] "kde" /var/lib/layman/kde
[2] "science" /var/lib/layman/science

Found 22 matches.
------------------
pkg-config --libs lapack blas:
-lreflapack -lrefblas 
------------------
Comment 8 Stephen Bosch 2015-04-21 09:28:29 UTC
Created attachment 401722 [details]
Build log
Comment 9 François Bissey 2015-04-21 10:54:22 UTC
I'd like to see /var/tmp/portage/sci-libs/scipy-0.15.1/work/scipy-0.15.1-python3_3/site.cfg
Comment 10 François Bissey 2015-04-21 10:55:25 UTC
I think I crushed someone's attachment while posting... You may need to resubmit.
Comment 11 Stephen Bosch 2015-04-21 14:33:36 UTC
(In reply to Francois Bissey from comment #9)
> I'd like to see
> /var/tmp/portage/sci-libs/scipy-0.15.1/work/scipy-0.15.1-python3_3/site.cfg

Looking at the output of 'eix cblas' I saw that cblas-reference was not installed, so I installed it. When I checked it with 'eselect cblast list' afterwards I got this:

# eselect cblas list
Available providers for cblas:
  [1]   openblas-threads *
  [2]   reference

After switching to reference, I was able to build scipy-0.15.1. Still, it ought to work with either one.

I've reset everything back and am attaching the requested site.cfg.
Comment 12 Stephen Bosch 2015-04-21 14:34:28 UTC
Created attachment 401740 [details]
/var/tmp/portage/sci-libs/scipy-0.15.1/work/scipy-0.15.1-python3_3/site.cfg
Comment 13 François Bissey 2015-04-21 21:40:32 UTC
(In reply to Stephen Bosch from comment #11)
> (In reply to Francois Bissey from comment #9)
> > I'd like to see
> > /var/tmp/portage/sci-libs/scipy-0.15.1/work/scipy-0.15.1-python3_3/site.cfg
> 
> Looking at the output of 'eix cblas' I saw that cblas-reference was not
> installed, so I installed it. When I checked it with 'eselect cblast list'
> afterwards I got this:
> 
> # eselect cblas list
> Available providers for cblas:
>   [1]   openblas-threads *
>   [2]   reference
> 
> After switching to reference, I was able to build scipy-0.15.1. Still, it
> ought to work with either one.
> 
> I've reset everything back and am attaching the requested site.cfg.

Well if your blas/cblas configuration was not sane, and by the sound of it, it wasn't. Then failure is certain. python doesn't really handle detection very well and we have moved away from a model where everything links to a common library name to something specific for each implementation.

You have to specify what you want you and specify it correctly. I am more interested on how you got esect and the various .pc files in the state they are currently. If you don't have openblas installed, you shouldn't have a corresponding .pc file to select.
Comment 14 Stephen Bosch 2015-04-22 11:01:41 UTC
(In reply to Francois Bissey from comment #13)
> Well if your blas/cblas configuration was not sane, and by the sound of it,
> it wasn't. Then failure is certain. python doesn't really handle detection
> very well and we have moved away from a model where everything links to a
> common library name to something specific for each implementation.

Unfortunately, this breaks things. Most software using lapack and blas links with -llapack and -llblas, and now we have openblas and blas-reference and so on.

But say we accept that: Why do we have still have eselect?

> You have to specify what you want you and specify it correctly.

I have an application which looks for both blas and openblas, so I installed both. What have I failed to specify correctly?

> I am more
> interested on how you got esect and the various .pc files in the state they
> are currently. If you don't have openblas installed, you shouldn't have a
> corresponding .pc file to select.

(By esect, do you mean eselect?)

I did have openblas installed, see above.

It certainly looks as though lapack and blas (even in the main tree) are in a bit of a bad state. What can I do to help? Note that I'm a novice ebuild writer, so taking everything over is not an option. But I use and depend on these packages myself and I would like to see that they work properly and cleanly. (Now I am trying to build sci-mathematics/octave and encountering similar problems: it 'cannot find -lblas')
Comment 15 François Bissey 2015-04-22 11:32:18 UTC
I always seem to get typos on eselect.

I hadn't understood that you had both refblas and openblas installed. eselect switch which .pc is used for blas/cblas/lapack. The problem here I think comes from the mixing of refblas and openblas_thread, it is hard to know because distutils doesn't tell you what it does exactly. I would have to tinker those files again.

Several points:
lapack-reference can use any of the package satisfying virtual/blas (blas-reference, openblas, atlas...).
It is a good idea for your eselected blas to be the one used for lapack (well, you did that).

Either your application does something stupid or you don't understand how to configure it. blas and openblas provide the same symbols and can be used one for the other. linking to both is bizarre.

I am curious about your problem with octave, but it is technically a separate bug.
Comment 16 Stephen Bosch 2015-04-22 14:11:43 UTC
(In reply to Francois Bissey from comment #15)
> I always seem to get typos on eselect.
> 
> I hadn't understood that you had both refblas and openblas installed.
> eselect switch which .pc is used for blas/cblas/lapack. The problem here I
> think comes from the mixing of refblas and openblas_thread, it is hard to
> know because distutils doesn't tell you what it does exactly. I would have
> to tinker those files again.
> 
> Several points:
> lapack-reference can use any of the package satisfying virtual/blas
> (blas-reference, openblas, atlas...).
> It is a good idea for your eselected blas to be the one used for lapack
> (well, you did that).
> 
> Either your application does something stupid or you don't understand how to
> configure it. blas and openblas provide the same symbols and can be used one
> for the other. linking to both is bizarre.

First I could not get OpenModelica to configure properly. I eventually managed to get configure to complete successfully, but I had mismatched blas and lapack and when I actually tried to build it, it failed because it couldn't find openblas.

> I am curious about your problem with octave, but it is technically a
> separate bug.

Yes, of course. Before I file that bug, though, I need to clean up my blas and lapack, because I seem to have a real mess on my hands.
Comment 17 Stephen Bosch 2015-04-22 14:21:56 UTC
(In reply to Francois Bissey from comment #15)
> I hadn't understood that you had both refblas and openblas installed.
> eselect switch which .pc is used for blas/cblas/lapack. The problem here I
> think comes from the mixing of refblas and openblas_thread, it is hard to
> know because distutils doesn't tell you what it does exactly. I would have
> to tinker those files again.

Should there not be a stable blas implementation in the main tree? It appears to be completely masked. This cleanup is going to more challenging than I had hoped.

How should I go about cleaning up my blas/lapack? I have lots of cruft (primarily in the form of broken symlinks) in my system now.
Comment 18 Mark Locascio 2015-04-23 01:55:00 UTC
I don't think I ever did any configuration of blas or lapack. They were pulled in as dependencies, so I just assumed they'd be ready to go.

I'll also add my /var/tmp/portage/sci-libs/scipy-0.15.1/work/scipy-0.15.1-python3_3/site.cfg

[blas]
include_dirs = 
library_dirs = :/usr/lib64
blas_libs = 
[lapack]
library_dirs = :/usr/lib64
lapack_libs = blas,lapack
Comment 19 François Bissey 2015-04-23 01:59:35 UTC
(In reply to Mark Locascio from comment #18)
> I don't think I ever did any configuration of blas or lapack. They were
> pulled in as dependencies, so I just assumed they'd be ready to go.
> 
> I'll also add my
> /var/tmp/portage/sci-libs/scipy-0.15.1/work/scipy-0.15.1-python3_3/site.cfg
> 
> [blas]
> include_dirs = 
> library_dirs = :/usr/lib64
> blas_libs = 
> [lapack]
> library_dirs = :/usr/lib64
> lapack_libs = blas,lapack

blas_libs is empty when it shouldn't. What does 
pkg-config --libs-only-l cblas blas
says?
Comment 20 Mark Locascio 2015-04-23 03:49:30 UTC
Here's some cblas info on my machine:

# pkg-config --libs-only-l cblas
Package cblas was not found in the pkg-config search path.
Perhaps you should add the directory containing `cblas.pc'
to the PKG_CONFIG_PATH environment variable
No package 'cblas' found

# pkg-config --libs-only-l blas
-lblas 

# eix cblas
[I] app-eselect/eselect-cblas
     Available versions:  0.1
     Installed versions:  0.1(07:54:10 PM 03/31/2015)
     Homepage:            http://www.gentoo.org/proj/en/eselect/
     Description:         C-language BLAS module for eselect

* sci-libs/cblas-reference
     Available versions:  20030223-r4 ~20030223-r5
     Homepage:            http://www.netlib.org/blas/
     Description:         C wrapper interface to the F77 reference BLAS implementation

[I] virtual/cblas
     Available versions:  1.0
     Installed versions:  1.0(08:08:41 PM 06/29/2009)
     Description:         Virtual for BLAS C implementation

Found 3 matches.
Comment 21 Stephen Bosch 2015-04-23 08:32:31 UTC
I have had some success cleaning up my LAPACK/BLAS installation with these instructions:

https://wiki.gentoo.org/wiki/User_talk:Houseofsuns

(François: after following the above instructions, the Octave install works.)

I'm a bit surprised that it was possible to mess things up like this just by installing some packages. And there is still the problem of applications which look only for -llapack -llblas, these break.
Comment 22 François Bissey 2015-04-23 08:39:25 UTC
(In reply to Stephen Bosch from comment #21)
> I have had some success cleaning up my LAPACK/BLAS installation with these
> instructions:
> 
> https://wiki.gentoo.org/wiki/User_talk:Houseofsuns
> 
> (François: after following the above instructions, the Octave install works.)
> 
> I'm a bit surprised that it was possible to mess things up like this just by
> installing some packages. And there is still the problem of applications
> which look only for -llapack -llblas, these break.

Good thing you found that document by yourself. I contributed to it but would probably not be able to find it again.

Any package that looks only for -llapack an -lblas in the tree needs to be reported.
Comment 23 Rick Farina (Zero_Chaos) gentoo-dev 2015-07-28 23:31:22 UTC
Created attachment 407840 [details]
build.log

Here is my build.log, replicatable when gsl provides virtual/cblas but blas-reference provides virtual/blas
Comment 24 gentoolinux 2015-09-28 12:31:46 UTC
I also had trouble updating scipy and can confirm this bug. I never used any overlay.
After doing "emerge -1 blas-reference lapack-reference gsl" building scipy succeeded for me (not sure if all three rebuilds are necessary).
Comment 25 Dennis Schridde 2015-10-29 09:32:59 UTC
See-Also: bug #563292, bug #563288, bug #563674
Comment 26 Dennis Schridde 2015-10-31 09:34:04 UTC
See-Also: bug #546858, bug #564546, bug #564548
Comment 27 Jadzia 2016-10-28 06:02:38 UTC
Had the same problem after a problem with arpack/lapack which were emerged as dependencies. See this bug here: https://bugs.gentoo.org/show_bug.cgi?id=596920

The scipy problem I was also able so solve with:
emerge --backtrack=30 -1 blas-reference lapack-reference gsl
Comment 28 Oleh 2016-11-13 14:07:33 UTC
ok, after doing eselect cblas set 1, scipy bulding fine. this is still valid for version 0.18.1
i wonder if this relates to eselect problem, which seems stil valid.
https://bugs.gentoo.org/show_bug.cgi?id=373613
Comment 29 Lagu 2016-12-02 14:34:39 UTC
Hi, mm, i think this can be a cblas-regerence problem, Oleg, your eselect cblas 2 is "reference"?

In that case can you test

eselect cblas set 1
eselect cblas set 2
emerge -1 scipy

If you was using "reference" and this test fails can be a cblas problem, but if it pass can be a eselect problem.

If you can't reproduce this would be great if someone can test this.

Thx.
Comment 30 Brian Evans (RETIRED) gentoo-dev 2017-01-31 17:10:59 UTC

*** This bug has been marked as a duplicate of bug 595712 ***