[MacPorts] #45003: Cannot install control package in Octave 3.8.1 on Mac OSX
MacPorts
noreply at macports.org
Tue Sep 16 16:21:46 PDT 2014
#45003: Cannot install control package in Octave 3.8.1 on Mac OSX
----------------------------+------------------------------------
Reporter: MacPorts@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.1
Keywords: octave control | Port: octave, octave-control
----------------------------+------------------------------------
After MacPorts upgraded octave to 3.8.1, octave could no longer load the
.oct files that came with the control package. (There was no path problem,
but dlopen() failed anyway, with "Reason: image not found", but the binary
file was there, dated April 18, meaning it's the same one that used to
work.) I uninstalled octave* and rebuilt like this (as I usually do):
{{{
> uname -a
Darwin mycomputer.local 13.3.0 Darwin Kernel Version 13.3.0: Tue Jun 3
21:27:35 PDT 2014; root:xnu-2422.110.17~1/RELEASE_X86_64 x86_64
> sudo port install -f octave +fltk +atlas +gcc48
...
---> No broken files found.
> port list installed | grep octave
octave @3.8.1 math/octave
> octave
...
octave:1> help tf
error: help: the 'tf' function belongs to the control package from Octave
Forge which
seems to not be installed in your system.
...
octave:1> pkg -forge install control
/bin/sh: line 0: cd: sltmp: No such file or directory
gfortran-mp-4.8: error: *.f: No such file or directory
gfortran-mp-4.8: fatal error: no input files
compilation terminated.
ar: ./sltmp/*.o: No such file or directory
make: *** [slicotlibrary.a] Error 1
tar -xzf slicot.tar.gz
mkdir sltmp
mv slicot/src/*.f ./sltmp
mv slicot/src_aux/*.f ./sltmp
cp TG04BX.fortran ./sltmp/TG04BX.f
cd sltmp; /opt/local/bin/mkoctfile-3.8.1 -c *.f
ar -rc slicotlibrary.a ./sltmp/*.o
pkg: error running `make' for the control package.
error: called from 'configure_make' in file
/opt/local/share/octave/3.8.1/m/pkg/private/configure_make.m near line 82,
column 9
error: called from:
error: /opt/local/share/octave/3.8.1/m/pkg/private/install.m at line 199,
column 5
error: /opt/local/share/octave/3.8.1/m/pkg/pkg.m at line 394, column 9
octave:1> exit
> sudo port install octave-control
...
---> Activating octave-control @2.6.0_0
...
---> No broken files found.
> octave
octave:1> tf(1)
error: tf: /opt/local/lib/octave/packages/control-2.6.0/x86_64-apple-
darwin13.0.0-api-v48+/is_real_matrix.oct: failed to load:
dlopen(/opt/local/lib/octave/packages/control-2.6.0/x86_64-apple-
darwin13.0.0-api-v48+/is_real_matrix.oct, 2): Library not loaded:
/opt/local/lib/octave/3.6.4/liboctinterp.1.dylib
Referenced from: /opt/local/lib/octave/packages/control-2.6.0/x86_64
-apple-darwin13.0.0-api-v48+/is_real_matrix.oct
Reason: image not found
error: called from:
error: /opt/local/share/octave/packages/control-2.6.0/@tf/tf.m at line
200, column 7
octave:1> ls -l /opt/local/lib/octave/packages/control-2.6.0/x86_64-apple-
darwin13.0.0-api-v48+/is_real_matrix.oct
-rwxr-xr-x 1 root admin 30716 Nov 29 2013
/opt/local/lib/octave/packages/control-2.6.0/x86_64-apple-
darwin13.0.0-api-v48+/is_real_matrix.oct
}}}
I originally reported this to the GNU Octave bugtracker, and got this
reply:
...
"With either Octave 3.8.1 and 3.8.2 compiled manually on Mavericks I
cannot reproduce your problem so this appears to be a MacPorts rather than
an Octave problem:"
{{{
>> pkg install -forge control
For information about changes from previous versions of the control
package, run 'news control'.
>> tf (1)
Transfer function 'ans' from input 'u1' to output ...
y1: 1
Static gain.
>> version
ans = 3.8.1
}}}
"... If I have to guess, though, a possible cause could be mixing clang
and gfortran which, according to my experience, never worked properly on
OSX. When building OSX binaries I use gcc for Octave and ALL its
dependencies. In MacPorts you can do that by specifying the gccXX variant
when available or specifying the compiler explicitly."
--
Ticket URL: <https://trac.macports.org/ticket/45003>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list