bugGNU Octave - Bugs: bug #42760, configure deteced libqrupdate...

 
 

bug #42760: configure deteced libqrupdate cannot locate libblas.so.0, octave build anyway

Submitted by:  None
Submitted on:  Sun 13 Jul 2014 12:38:06 PM UTC  
 
Category: LibrariesSeverity: 3 - Normal
Priority: 5 - NormalItem Group: Build Failure
Status: NoneAssigned to: None
Originator Name: Marius BrehlerOriginator Email: -unavailable-
Open/Closed: ClosedRelease: 3.8.1
Operating System: GNU/Linux

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

(Jump to the original submission Jump to the original submission)

Mon 14 Jul 2014 06:23:49 PM UTC, comment #6:

I don't think there is enough detail in this report for me to understand what is really happening.

It appears that somehow you no longer have libblas.so.0 on your system, but some library is still linked to it. Perhaps that is a packaging bug? Or some library that Octave is linked with that uses libblas.so.0 was not removed when libblas.so.0 was removed from your system?

When did you remove libblas.so.0? Before or after configuring and building Octave?

Are the Octave libraries linked directly with libblas.so.0? I think you would have to look at the link commands for liboctave, liboctinterp to see as ldd seems to just report the full list of all libraries that are linked, even if not directly.

Is some other library linked directly with libblas.so.0? What does ldd tell you if you ask for the list of libraries linked to the arpack and qrupdate libraries?

John W. Eaton <jwe>
Project Administrator
Mon 14 Jul 2014 06:07:15 PM UTC, comment #5:

Unfortunately I cannot reproduce it anymore without replacing blas..

To clarify, octave's configure dropped the message like in the report, but finished without an error. So this is somehow more a warning. Make build octave and after it was installed 'ldd' showed that octave was linked against '/usr/lib64/libblas.so.0' and '/usr/lib64/librefblas.so'.

I think the problem is that octave somehow still was build with support for arpack and qrupdate. This has to generate trouble, because both libraries were build against -lblas. The point I don't understand is, that configure detected that this will not work out, but finally octave still build against those libs, resulting in a linkage with libblas.so.0 and a non-starting octave binary.

Anonymous
Mon 14 Jul 2014 01:38:02 PM UTC, comment #4:

So you're saying Octave correctly avoids building against qrupdate and arpack, but it still won't run because of a link to libblas instead of librefblas? Are you sure it is the octave-cli executable that directly links to libblas or is it via another library? The configure summary that shows at the end of the configure command should list all external libraries that Octave will link against. If you don't see "-lblas" in that output, then it's likely coming in as a dependency of another shared library.

Mike Miller <mtmiller>
Project Administrator
Mon 14 Jul 2014 07:26:44 AM UTC, comment #3:

In that case, why is /usr/bin/octave-cli-3.8.1 linked against /usr/lib64/libblas.so.0 and /usr/lib64/librefblas.so? Because of the linkage to libblas.so.0, octave wont even start.

Anonymous
Mon 14 Jul 2014 03:17:45 AM UTC, comment #2:

This may be annoying, but isn't an error with the Octave build system. qrupdate and arpack are optional features. During the configure process Octave tries to build a small test program which uses the qrupdate library. If that fails, the build process assumes that qrupdate isn't available and just disables those optional functions that might depend on it.

In this case, the qrupdate library wasn't available because it had been compiled against the previous BLAS library and so the build process discarded it.

Rik <rik5>
Project Administrator
Sun 13 Jul 2014 12:55:59 PM UTC, comment #1:

Same issue with arpack.

Anonymous
Sun 13 Jul 2014 12:38:06 PM UTC, original submission:

I am an gentoo science-overlay user, so I switched from libblas to librefblas, same for LAPACK. That's why I needed to rebuild octave. Unfortunately, configure detected an error, but didn't aborted the build process. Here the extract from config.log:

configure:35899: $? = 0
configure:35908: result: yes
configure:35940: checking for slup1up in -lqrupdate
configure:35956: x86_64-pc-linux-gnu-gfortran -o conftest -O2 -pipe -Wl,-O1 -Wl,--as-needed conftest.f -lreflapack -lrefblas -lrefblas -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../.. -lgfortran -lm -lquadmath -lm -lqrupdate >&5
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../x86_64-pc-linux-gnu/bin/ld: warning: libblas.so.0, needed by /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../lib64/libqrupdate.so, not found (try using -rpath or -rpath-link)
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../x86_64-pc-linux-gnu/bin/ld: warning: liblapack.so.0, needed by /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../lib64/libqrupdate.so, not found (try using -rpath or -rpath-link)

So, makes does its work and after all I just get a

$ octave
/usr/bin/octave-cli-3.8.1: error while loading shared libraries: libblas.so.0: cannot open shared object file: No such file or directory

In that case, should configure abort with an error instead of just showing a warning? Acctually it's my fault, needed to rebuild qrupdate, but anyway have some time if ocatve just had quit building.

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Digest:
   bug dependencies.

 

Carbon-Copy List
  • -unavailable- added by jwe (Posted a comment)
  • -unavailable- added by mtmiller (Posted a comment)
  • -unavailable- added by rik5 (Posted a comment)
  • -unavailable- added by None (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 2 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Tue 08 Nov 2016 06:42:48 AM UTCmtmillerDependencies-=>bugs #49547 is dependent
    Mon 14 Jul 2014 03:17:45 AM UTCrik5Open/ClosedOpen=>Closed

    Back to the top


    Powered by Savane 3.1-cleanup1