help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Octave 2.9.9 + Octave-Forge 2006.07.09 on x86 MAC OS X 10.4.8 Tiger


From: Paul Koufalas
Subject: Re: Octave 2.9.9 + Octave-Forge 2006.07.09 on x86 MAC OS X 10.4.8 Tiger
Date: Fri, 22 Dec 2006 15:23:40 +1030

Marius,

Does your comment about readline incompatibility mean that installing GNU readline (e.g. HMUG's binary of that) in /usr/local/... is the way forward?  The two different readlines can co-exist I assume?  

I'm wondering if the HMUG octave-forge libraries (binaries) contain a full path to the GNU readline library, or will they always pick up the Apple readline library?  Noting there is a way to change the path to the library... install_name_tool -change <path/to/shared/library> <oct file>
  
I'm only contemplating that ugly hack because I'm also following the agonizing thread started by Matthias...

As I mentioned before, I was going to throw in the towel with HPC + HMUG and start over with just the HMUG binaries of Octave and Octave Forge but I'm not sure about:

1. How to simply and cleanly uninstall the HPC Octave version;
2. How many shared libraries I need to install for HMUG's binaries, I started to install all of the dependencies and noticed some of them were static libraries and therefore presumably not needed unless I want to compile from source. 

Cheers,
Paul. 


On 18/12/2006, at 1:22 AM, Marius Schamschula wrote:


On Dec 17, 2006, at 7:15 AM, Paul Koufalas wrote:

Marius,

pkoufalas$ otool -L octave
octave:
        /usr/local/lib/octave-2.9.9/liboctinterp.dylib (compatibility version 0.0.0, current version 0.0.0)
        /usr/local/lib/octave-2.9.9/liboctave.dylib (compatibility version 0.0.0, current version 0.0.0)
        /usr/local/lib/octave-2.9.9/libcruft.dylib (compatibility version 0.0.0, current version 0.0.0)
        /System/Library/Frameworks/vecLib.framework/Versions/A/vecLib (compatibility version 1.0.0, current version 192.15.0)
        /usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)
        /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 88.3.4)
        /usr/local/lib/libgfortran.2.dylib (compatibility version 3.0.0, current version 3.0.0)
        /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
        /usr/local/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

I can't see readline or hdf5 in that list!!  There is also a libgfortran.2.dylib that is missing from yours (you did say HMUG used g95).   That said, HPC octave appears to work ok (very limited testing), until HMUG octave-forge is installed.

If I run octave_config_info from the Octave prompt, I can see these fragments in the output:

DEFS = ... -DUSE_READLINE=1 ... 
LIBREADLINE = -lreadline
LIBS = -lreadline  -lncurses -lz -lm 

I found /usr/lib/libreadline.dylib but this is in a different place to yours, and is a symbolic link to libedit.2.dylib in that same directory.  I couldn't find anything at all on HDF5.   

This is Apple's "readine", which is not the same as GNU readline, i.e. the two are incompatible. Apple's readline fails in the ./configure stage of a octave build.

I built in HDF5 support since this is a common file format in Earth and Space Science.

Cheers,
Paul.

On 17/12/2006, at 10:58 PM, Marius Schamschula wrote:

Paul,

I get

marius$ octave-config --m-site-dir
/usr/local/share/octave/2.9.9/site/m
marius$ octave-config --oct-site-dir
/usr/local/libexec/octave/2.9.9/site/oct/i386-apple-darwin8.8.1
marius$ octave-config -p BINDIR
/usr/local/bin
marius$ octave-config -p CANONICAL_HOST_TYPE
i386-apple-darwin8.8.1
marius$ octave-config -p LIBDIR
/usr/local/lib
marius$ octave-config -p LIBEXECDIR
/usr/local/libexec
marius$ octave-config -p OCTLIBDIR
/usr/local/lib/octave-2.9.9
marius$ octave-config -p DATADIR
/usr/local/share
marius$ octave-config -p ARCHLIBDIR
/usr/local/libexec/octave/2.9.9/exec/i386-apple-darwin8.8.1

which all match.

However, let us see what octave is built from. I get:

marius$ otool -L /usr/local/bin/octave
/usr/local/bin/octave:
        /usr/local/lib/octave-2.9.9/liboctinterp.dylib (compatibility version 0.0.0, current version 0.0.0)
        /usr/local/lib/octave-2.9.9/liboctave.dylib (compatibility version 0.0.0, current version 0.0.0)
        /usr/local/lib/octave-2.9.9/libcruft.dylib (compatibility version 0.0.0, current version 0.0.0)
        /System/Library/Frameworks/vecLib.framework/Versions/A/vecLib (compatibility version 1.0.0, current version 182.24.0)
        /usr/local/lib/libreadline.5.2.dylib (compatibility version 5.0.0, current version 5.2.0)
        /usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)
        /usr/local/lib/libhdf5.0.dylib (compatibility version 1.0.0, current version 1.0.0)
        /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 88.1.7)
        /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
        /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

I suspect you don't have the same versions of readline and hdf5.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]