Marius Schamschula wrote:
Option? You can't build octave-forge if octave is built statically. The
problem is simply how not to link against Apple's BSD readline...
One should be able to build a shared liboctave, yet link in
a static libreadline.a.
E.g. on my linux, octave has ATLAS linked in statically, yet
I built a shared liboctave...
I am a bit puzzled...
I tried moving the apple library in /usr/lib
and configuring with --enable-readline
I set LDFLAGS="-L/sw/lib" so I would expect
to link to the fink-installed dynamic GNU version of readline
residing in /sw/lib.
configure and compile work ok, but:
$ otool -L /opt/octave/lib/liboctave.dylib | grep readline
gives no results
$ nm /opt/octave/lib/liboctave.dylib | grep _rl_set_keyboard_input_timeout
0050efd8 T _rl_set_keyboard_input_timeout
so it seems that I linked in the static version which is in
This is ok for me, everything works fine ( exept that the octave installation
is now 263Mb instead of 37!!) but I am very annoyed by the fact
that it seems that I'm not able to chose clearly with linker options
what library to use...
It's even more puzzling if you consider that libncurses is also installed
both in /usr/lib and in /sw/lib but this time the linker picks the fink version,
wich is the expected behaviour given the configuration options but is not
consistent with the behaviour for libreadline.
Summarizing, as for myself,
I will give it a last try by also removing /usr/local/libreadline.a
before configuring so the linker should have no choice but using the
/sw/lib/libreadline.dylib dynamic library. Otherwise I will stick with the
current version with readline linked in statically.
But do you think I should also consider this behaviour a bug in the
apple linker and report it to apple?