[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Problems linking octave 2.0.16 under RedHat Linux 6.1
From: |
Mumit Khan |
Subject: |
Re: Problems linking octave 2.0.16 under RedHat Linux 6.1 |
Date: |
Thu, 16 Mar 2000 11:53:48 -0600 (CST) |
On Wed, 15 Mar 2000, Jeff Silverman wrote:
> Hi. I am trying to build Octave 2.0.16 on an Intel RedHat Linux 6.1 machine.
> It seems to go through configure with no problems, and it compiles fine, but
> when it loads, it fails.
>
> make[2]: Entering directory `/s0/src/octave/octave-2.0.16/src'
> c++ -I. -I.. -I../liboctave -I../src -I../libcruft/misc -I../glob -I../glob
> -DHAVE_CONFIG_H -mieee-fp -fno-rtti -fno-exceptions -fno-implicit-templates
> -g -O2 -Wall -rdynamic \
> -L.. -u MAIN__ -fPIC -g -o octave \
> octave.o builtins.o balance.o besselj.o betainc.o chol.o colloc.o
> dassl.o det.o eig.o expm.o fft.o fft2.o filter.o find.o fsolve.o
> gammainc.o getgrent.o getpwent.o getrusage.o givens.o hess.o ifft.o
> ifft2.o inv.o log.o lpsolve.o
lsode.o lu.o minmax.o pinv.o qr.o quad.o qzval.o rand.o schur.o
sort.o svd.o syl.o time.o \
> -L../liboctave -L../libcruft -L../src -Xlinker -rpath -Xlinker
> /usr/local/lib/octave-2.0.16 \
> ../src/liboctinterp.a ../liboctave/liboctave.a ../libcruft/libcruft.a
> ../readline/libreadline.a ../kpathsea/libkpathsea.a ../glob/libglob.a \
> -lg2c -lm -L/share/lib/gcc-lib/i686-pc-linux-gnu/2.95.1 -L/share/lib -lm
> -lncurses -ldl -lm
> octave.o: In function `intern_argv(int, char **)':
> /usr/include/g++-2/stl_alloc.h:382: undefined reference to
> `__default_alloc_template<true, 0>::__node_allocator_lock'
> /usr/include/g++-2/stl_alloc.h:431: undefined reference to
> `__default_alloc_template<true, 0>::free_list'
> /usr/include/g++-2/stl_alloc.h:432: undefined reference to
> `__default_alloc_template<true, 0>::free_list'
> /usr/include/g++-2/stl_alloc.h:383: undefined reference to
> `__default_alloc_template<true, 0>::__node_allocator_lock'
Hmmm ... I see references to gcc-2.95.1 when linking (/share/.../2.95.1),
but you're obviously using egcs-1.1.x to compile (that's where the g++-2
include directory comes in). Double check your compiler version with
`c++ -v' and see if you're indeed running the right copy (don't mix
egcs-1.1.x and gcc-2.95.x).
Also, check to make sure you *don't* have any of the following environment
variables defined:
C_INCLUDE_PATH
CPLUS_INCLUDE_PATH
GCC_EXEC_PREFIX
LIBRARY_PATH
COMPILER_PATH
Or, if you do, these are known to be correct.
> I created LD_LIBRARY_PATH and set it to /lib:/usr/lib but that doesn't change
> the outcome.
If you have to LD_LIBRARY_PATH on your own machine, you're already in
trouble ;-) Use -Wl,-rpath (or --rpath if using the linker directly)
when linking.
Show the output with -v option and that might expose the culprit.
Regards,
Mumit
-----------------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.
Octave's home on the web: http://www.che.wisc.edu/octave/octave.html
How to fund new projects: http://www.che.wisc.edu/octave/funding.html
Subscription information: http://www.che.wisc.edu/octave/archive.html
-----------------------------------------------------------------------