[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Oct files run in Octave version 3.6.4 or 4.0.0 but not both
From: |
Mike Miller |
Subject: |
Re: Oct files run in Octave version 3.6.4 or 4.0.0 but not both |
Date: |
Mon, 28 Sep 2015 21:16:46 -0400 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Mon, Sep 28, 2015 at 11:16:20 -0700, babelproofreader wrote:
> I have two versions of Octave installed, version 3.6.4 installed via the
> package manager (Linux Mint Debian), and version 4.0.0 compiled from source.
> I also have numerous .oct files in a folder pointed to in an .octaverc file.
> My problem is that the version 4.0.0 cannot "see" these .oct files and if I
> try to call them the whole session crashes unless I recompile them under
> 4.0.0 with mkoctfile. However, doing this means that the version 3.6.4
> cannot "see" them and trying to call them gives an error message
>
> failed to load: liboctinterp.so.3: cannot open shared object file: No such
> file or directory
>
> How can I get both versions to recognize my .oct functions without hoving to
> recompile them each time?
Short answer: you can't.
The Octave library API and ABI change between releases. Octave 3.6 was
liboct{ave,interp}.so.1, Octave 3.8 was liboct{ave,interp}.so.2, and 4.0
is liboct{ave,interp}.so.3. These libraries are not forwards or
backwards compatible.
Compile your oct-files in two (or three?) different paths with the
Octave version in the path?
Cheers,
--
mike