octave-control 2.6.5-1 is missing the compiled file __control_slicot_functions__.oct

Bug #1403184 reported by Aidan Macdonald
28
This bug affects 4 people
Affects Status Importance Assigned to Milestone
octave-control (Ubuntu)
Fix Released
Undecided
Mike Miller
Utopic
Fix Released
High
Mike Miller

Bug Description

The package octave-control in Ubuntu 14.10 is missing the compiled file /usr/lib/x86_64-linux-gnu/octave/packages/control-2.6.5/x86_64-pc-linux-gnu-api-v49+/__control_slicot_functions__.oct. Compare the file list between 14.04, 14.10, and 15.04 to see that the file is only missing in the utopic build. The missing file should have been a build error, but a separate error in Octave 3.8.1 masks the exit status of a linker error when building oct-file extensions for Octave.

The reason for the build failure looks like there may have been a temporary problem with the libgfortran library at the time that octave-control was built for utopic. Rebuilding the source package in a clean chroot now results in the correct package contents.

I believe a rebuild of the source package should be suitable for an SRU for utopic.

[Impact]

 * The missing file contains many low-level functions supporting the rest
   of the octave-control package. Some portion of the package may work, but
   much of it is completely non-functional.

 * The fix is a no-change rebuild, which should result in the missing file
   being correctly compiled and installed. The reason it is missing in the
   current package was a link error against libgfortran at the time it was
   built. That error does not occur when the source package is rebuilt now.

 * This package is a leaf package, only affecting itself, octave, and other
   octave-* packages that depend on it. This bug is a moderately severe
   regression from trusty. The package may not be completely unusable, but
   much of its functionality is affected.

[Test Case]

 * As described in bug #1410542, run the following octave test case:

   $ octave -q --persist --eval "more off; s=tf('s'); h=1/((s-1)*(s-10));
     step(h)"

   With the bug present, this will result in

   warning: autoload: '__control_slicot_functions__.oct' is not an absolute file name
   warning: autoload: '__control_slicot_functions__.oct' is not an absolute file name
   ...
   warning: autoload: '__control_slicot_functions__.oct' is not an absolute file name
   error: '__sl_td04ad__' undefined near line 121 column 14

   When the bug is fixed, octave will produce a plot, either graphical or
   ascii art, depending on your environment.

 * Another test case is to run the following:

   $ sudo update-alternatives --set libblas.so.3 \
        /usr/lib/libblas/libblas.so.3
   $ sudo update-alternatives --set liblapack.so.3 \
        /usr/lib/lapack/liblapack.so.3
   $ octave -q --eval "more off; test_control"

   With the bug present, this will result in lots of error output showing
   the contents of data arrays and structs, with "!!!!! test failed" and
   "undefined near" messages sprinkled throughout.

   When the bug is fixed, the same command will result in a clean list of
   several "PASSES # out of # tests".

   The reason for ensuring the BLAS and LAPACK libraries are selected instead
   of ATLAS is described in the test_control.m script being run, see
   /usr/share/octave/packages/control-2.6.5/test_control.m.

[Regression Potential]

 * As the fix for this bug is a no-change rebuild, the regression risk is
   quite low. There is no source diff, so there is no risk from inadvertent
   code changes being introduced.

 * The intent of this fix is to produce an updated binary package that is
   identical to the current package with the addition of the one missing
   file. There are 5 other compiled files in the package that are much
   simpler and have no external dependencies other than octave.

Related branches

Revision history for this message
Mike Miller (mtmiller) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. I can confirm that the file __control_slicot_functions__.oct is indeed missing from the octave-control package in Ubuntu 14.10. This has been fixed with octave 3.8.2 and octave-control 2.6.6 in the 15.04 development archive.

I believe a fix for this should be suitable for an SRU, since it is fixed by simply rebuilding the octave-control source package. The build log for the package shows that there was some kind of temporary link problem against the libgfortran library at the time.

Changed in octave-control (Ubuntu):
assignee: nobody → Mike Miller (mtmiller)
status: New → Confirmed
Mike Miller (mtmiller)
description: updated
summary: - warning: autoload: '__control_slicot_functions__.oct' is not an absolute
- file name
+ octave-control 2.6.5-1 is missing the compiled file
+ __control_slicot_functions__.oct
description: updated
tags: added: utopic
Changed in octave-control (Ubuntu):
status: Confirmed → Fix Released
Changed in octave-control (Ubuntu Utopic):
status: New → Triaged
importance: Undecided → High
Mike Miller (mtmiller)
Changed in octave-control (Ubuntu Utopic):
assignee: nobody → Mike Miller (mtmiller)
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Aidan, or anyone else affected,

Accepted octave-control into utopic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/octave-control/2.6.5-1build1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in octave-control (Ubuntu Utopic):
status: Triaged → Fix Committed
tags: added: verification-needed
Revision history for this message
Mike Miller (mtmiller) wrote :

I installed the rebuilt octave-control 2.6.5-1build1 from utopic-proposed and it fixes the two test cases I proposed earlier. Looks good to me.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Brian Murray (brian-murray) wrote : Update Released

The verification of the Stable Release Update for octave-control has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package octave-control - 2.6.5-1build1

---------------
octave-control (2.6.5-1build1) utopic; urgency=medium

  * No-change rebuild to restore missing oct-file (LP: #1403184)
 -- Mike Miller <email address hidden> Tue, 13 Jan 2015 20:53:59 -0500

Changed in octave-control (Ubuntu Utopic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.