Tue 29 Oct 2013 01:43:46 AM UTC, original submission:
I have a current installation of Cygwin x64 (dll version 1.7.25), with the latest Octave package (3.6.4) installed. I wanted to use the expfit function from the optim package in octave-forge, so I the following from the Octave prompt:
pkg install -forge optim
After working through the dependencies, optim installed (albeit with some warnings about unusable help text and optimset: no defaults).
expfit remains undefined.
I noticed that in my home directory the octave-forge packages were in a folder called octave, and that ~/octave/optim-1.2.2/expfit.m existed. However, in /usr/share/octave/3.6.4/m/optimization/ only the following existed:
_all_opts_.m fminbnd.m fsolve.m glpk.m optimget.m PKG_ADD private sqp.m
expfit.m fminunc.m fzero.m lsqnonneg.m optimset.m pqpnonneg.m qp.m
Manually copying ~/octave/optim-1.2.2/expfit.m to /usr/share/octave/3.6.4/m/optimization/ resolved the problem and I could then run expfit from octave.
Why are only some of the optim packages actually installed in the octave package directory?
I tried the same procedure on Cygwin x86. In that case an octave-forge package is available. It installs optim-1.2.2 as well, but again the layout is like so:
/usr/share/octave/packages/optim-1.2.2/ contains expfit.m and friends
/usr/share/octave/3.6.4/m/optimization/ does not, only containing the same subset as in the x64 case.
|