On 11/24/2014 05:06 PM, Andrey Rahmatullin wrote: > I cannot reproduce this with these libblas3 and libopenblas-base. > Please show: > > readlink -f /usr/lib/libblas.so.3 > ldd -r /usr/lib/libblas.so.3 > nm -D /usr/lib/libblas.so.3 | fgrep cgemm3m_nn > nm -D /usr/lib/libopenblas.so.0 | fgrep cgemm3m_nn >
$ readlink -f /usr/lib/libblas.so.3 /usr/lib/openblas-base/libblas.so.3 $ ldd -r /usr/lib/libblas.so.3 linux-vdso.so.1 (0x00007ffff75dd000) libopenblas.so.0 => /usr/local/lib/libopenblas.so.0 (0x00007f98b1e3f000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f98b1b3e000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f98b1920000) libgfortran.so.3 => /usr/lib/x86_64-linux-gnu/libgfortran.so.3 (0x00007f98b1602000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f98b1259000) /lib64/ld-linux-x86-64.so.2 (0x00007f98b41d2000) libquadmath.so.0 => /usr/lib/x86_64-linux-gnu/libquadmath.so.0 (0x00007f98b101b000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f98b0e05000) undefined symbol: cgemm3m_nn (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_tn (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_rn (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_cn (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_nt (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_tt (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_rt (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_ct (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_nr (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_tr (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_rr (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_cr (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_nc (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_tc (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_rc (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_cc (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_nn (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_tn (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_rn (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_cn (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_nt (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_tt (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_rt (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_ct (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_nr (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_tr (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_rr (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_cr (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_nc (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_tc (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_rc (/usr/lib/libblas.so.3) undefined symbol: cgemm3m_thread_cc (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_nn (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_tn (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_rn (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_cn (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_nt (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_tt (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_rt (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_ct (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_nr (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_tr (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_rr (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_cr (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_nc (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_tc (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_rc (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_cc (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_nn (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_tn (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_rn (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_cn (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_nt (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_tt (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_rt (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_ct (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_nr (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_tr (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_rr (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_cr (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_nc (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_tc (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_rc (/usr/lib/libblas.so.3) undefined symbol: zgemm3m_thread_cc (/usr/lib/libblas.so.3) $ nm -D /usr/lib/libblas.so.3 | fgrep cgemm3m_nn U cgemm3m_nn $ nm -D /usr/lib/libopenblas.so.0 | fgrep cgemm3m_nn 0000000000210b10 T cgemm3m_nn /usr/lib/libblas.so.3 points to /usr/lib/openblas-base/libblas.so.3 via /etc/alternatives/libblas.so.3. When I manually change this link to point to /usr/lib/libopenblas.so.0, importing numpy works (as one would expect from nm's output). /usr/lib/libopenblas.so.0 points to /usr/lib/libopenblasp-r0.2.12.so. I don't know why Debian's alternatives system decided to point to /usr/lib/openblas-base/libblas.so.3 instead of /usr/lib/libopenblas.so.0, which contains the required symbols. I don't understand neither why libopenblas/libblas.so.3 doesn't contain all those ?gemm3m_* symbols on my system. Anyway, this is probably a bug in libopenblas-base? I tried reinstalling libopenblas-base, but to no avail. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org