[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Octave on Mac
From: |
Aakash S Dalwani |
Subject: |
Re: Octave on Mac |
Date: |
Mon, 09 May 2005 11:07:26 -0500 |
On 5/9/2005, "John W. Eaton" <address@hidden> wrote:
>On 9-May-2005, A Scotte Hodel wrote:
>
>| I received the question below. The procedure that I used to compile
>| octave-2.1.64 does not appear to work for the more recent 2.1.x branch
>| release or CVS releases. Has anyone else had success with this?
>|
>| I've used a Makefile to do the octave/octave-forge install on Octave.
>| The text of the Makefile is at the end of this email.
>|
>| On May 8, 2005, at 11:04 PM, Aakash S Dalwani wrote:
>|
>| > Respected Sir,
>| > I am trying to install the latest version of Octave (2.9.2) on
>| > a
>| > node
>| > of an Apple Cluster running Mac OS X server (10.3.7).
>| >
>| > Although I am able to run the configure script, but I get the
>| > following message when I run make.
>| >
>| > "ld: multiple definitions of symbol Array<long>::operator()(int, int,
>| > int) const
>| > Array-i.o definition of Array<long>::operator()(int, int, int) const
>| > in
>| > section (__TEXT,__text)
>| > Array-so.o definition of Array<long>::operator()(int, int, int)
>| > const in
>| > section (__TEXT,__text)
>| > ld: multiple definitions of symbol vtable for Array<long>
>| > Array-i.o definition of vtable for Array<long> in section
>| > (__DATA,__const)
>| > Array-so.o definition of vtable for Array<long> in section
>| > (__DATA,__const)"
>| >
>| > After many such messges, finally make exits with the following
>| > error
>| > message:
>| > "/usr/bin/libtool: internal link edit command failed
>| > make[2]: *** [liboctave.dylib] Error 1
>| > make[1]: *** [liboctave] Error 2
>| > make: *** [all] Error 2"
>
>It looks like the std::streamoff type on your system is just a typedef
>for long. Is that correct? If so, I suppose you can solve the
>problem by elimintating Array-so.cc from the list of files to compile
>and link. Look for TI_SRC in liboctave/Makefile.in and remove
>Array-so.cc from the list, then run
>
> ./config.status
> make
>
>again at the top-level of your build directory.
Respected Sir,
First of all, thank you for your prompt reply.
As per your instructions, I removed Array-so.cc from the list. Now I get
this message,
"kpse-xfns.c: In function `octave_basename':
kpse-xfns.c:61: warning: implicit declaration of function `basename'
rm -f liboctave.dylib
g++ -dynamiclib -single_module -install_name
/Home/aakash/octave-2.9.2/lib/octave-2.9.2/liboctave.dylib -o
liboctave.dylib \
.. list of object files truncated....
cmd-hist.o oct-rl-edit.o oct-rl-hist.o pathsearch.o kpse-xfns.o
-L../libcruft -L../glob -L. -lcruft -lncurses -lz -lm
-L/opt/ibmcmp/xlsmp/1.4/lib -L/opt/ibmcmp/xlf/8.1/lib
-L/usr/lib/gcc/darwin/3.3 -L/usr/lib/gcc/darwin
-L/usr/libexec/gcc/darwin/ppc/3.3/../../.. -lz -lm -lxlf90 -lxlopt
-lxlomp_ser -lxl -lxlfmath -lSystem
ld: warning -L: directory name (../glob) does not exist
ld: Undefined symbols:
MArray2<std::complex<double> > operator*<std::complex<double>
>(std::complex<double> const&, MArray2<std::complex<double> > const&)
MArray2<std::complex<double> > operator-<std::complex<double>
>(MArray2<std::complex<double> > const&)
MArray2<std::complex<double> > operator+<std::complex<double>
>(MArray2<std::complex<double> > const&, MArray2<std::complex<double> >
const&)
/usr/bin/libtool: internal link edit command failed
make[2]: *** [liboctave.dylib] Error 1
make[1]: *** [liboctave] Error 2
make: *** [all] Error 2"
Please guide,
Aakash
-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.
Octave's home on the web: http://www.octave.org
How to fund new projects: http://www.octave.org/funding.html
Subscription information: http://www.octave.org/archive.html
-------------------------------------------------------------