Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 435906 - sci-mathematics/octave-3.6.2-r1 - .../work/octave-3.6.2/src/.libs/octave: error while loading shared libraries: libblas.s o.0: cannot open shared object file: No such file or directory
Summary: sci-mathematics/octave-3.6.2-r1 - .../work/octave-3.6.2/src/.libs/octave: err...
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Science Mathematics related packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-22 17:21 UTC by Anton Kochkov
Modified: 2013-06-19 16:26 UTC (History)
0 users

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


Attachments
octave-3.6.2-r1_build.log.gz (octave-3.6.2-r1_build.log.gz,86.37 KB, application/x-gzip)
2012-09-22 17:21 UTC, Anton Kochkov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Kochkov 2012-09-22 17:21:05 UTC
Created attachment 324640 [details]
octave-3.6.2-r1_build.log.gz

It give that error, even with blas-reference is installed (from science overlay)

mv preface.texi-t preface.texi
restore=: && backupdir=".am$$" && \
am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd . && \
rm -rf $backupdir && mkdir $backupdir && \
if (/bin/sh /var/tmp/portage/sci-mathematics/octave-3.6.2-r1/work/octave-3.6.2/build-aux/missing --run makeinfo --version) >/dev/null 2>&1; then \
  for f in octave.info octave.info-[0-9] octave.info-[0-9][0-9] octave.i[0-9] octave.i[0-9][0-9]; do \
    if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
  done; \
else :; fi && \
cd "$am__cwd"; \
if /bin/sh /var/tmp/portage/sci-mathematics/octave-3.6.2-r1/work/octave-3.6.2/build-aux/missing --run makeinfo   -I . \
 -o octave.info octave.texi; \
then \
  rc=0; \
  CDPATH="${ZSH_VERSION+.}:" && cd .; \
else \
  rc=$?; \
  CDPATH="${ZSH_VERSION+.}:" && cd . && \
  $restore $backupdir/* `echo "./octave.info" | sed 's|[^/]*$||'`; \
fi; \
rm -rf $backupdir; exit $rc
../../run-octave -f -q -H ./mk_doc_cache.m doc-cache ../../scripts/DOCSTRINGS ../../src/DOCSTRINGS || { rm -f doc-cache; exit 1; }
/var/tmp/portage/sci-mathematics/octave-3.6.2-r1/work/octave-3.6.2/src/.libs/octave: error while loading shared libraries: libblas.so.0: cannot open shared object file: No such file or directory
make[3]: *** [doc-cache] Error 1
make[3]: Leaving directory `/var/tmp/portage/sci-mathematics/octave-3.6.2-r1/work/octave-3.6.2/doc/interpreter'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/sci-mathematics/octave-3.6.2-r1/work/octave-3.6.2/doc'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/sci-mathematics/octave-3.6.2-r1/work/octave-3.6.2'
make: *** [all] Error 2
Comment 1 Oliver Freyermuth 2013-02-03 22:11:20 UTC
I had also been hit by that error and fixed it, but could not really track it down: 

octave correctly uses -lrefblas if blas-reference is installed. However, during an intermediate compilation stage, it was still using "-lblas" for me, in addition to "-lrefblas". I could not track down the packet causing it with 
"revdep-rebuild -L /usr/lib64/libblas.so",
and the new portage-2.2 preserve-libraries feature only told me octave is still using /usr/lib64/libblas.so. After I deleted that file manually, I could not compile octave anymore. 
I examined the linker-commandline in the build-log and found "-lblas" in addition to "-lrefblas". Around that statement, libraries coming from the following packages were included: 
    =sci-libs/cholmod-1.6.0-r1
    =sci-libs/umfpack-5.2.0
    =sci-libs/amd-2.2.0
After recompiling these three, I could compile octave just fine again and it did not try to link against "-lblas" anymore. 

Hope that helps, and maybe somebody can track it down! 
Something else you might try: Run 
lafilefixer --justfixit
and try to recompile octave, maybe this is sufficient. 
At least, I think you should not be able to compile octave anymore, and furthermore, switching from any blas to blas-reference or vice-versa should necessitate recompilation if I understand correctly...
Comment 2 Oliver Freyermuth 2013-02-04 21:38:37 UTC
Another package that has caused this for me to appear on a different machine: 
sci-libs/qrupdate
Although portage's preserved-libs-feature did not tell me anything about it, it was still linked against libblas:
libqrupdate.so: libblas.so.0 => not found
I think a revdep-rebuild should have helped (did not try that, though). 

A much faster and - in this case - probably sufficient way to find the libs in question is the line: 
for A in /usr/lib/*.so; do echo -n $A":"; ldd $A | grep libblas.so; echo ""; done | grep blas.so

So I think that in this case, you cannot trust preserved-libs yet, can you try whether revdep-rebuilt works for you?
Comment 3 Sébastien Fabbro (RETIRED) gentoo-dev 2013-06-19 16:26:28 UTC
should be gone by now with newer octave and blas.