help-octave
[Top][All Lists]
Advanced

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

Re: clues to statically building octave w/extensions?


From: A. Danial
Subject: Re: clues to statically building octave w/extensions?
Date: Fri, 15 Jun 2001 06:52:39 -0700
User-agent: Mutt/1.2.5i

On Wed, Jun 13, 2001 at 01:24:34PM -0500, Bill Lash wrote:
> "A. Danial" wrote:

> > c++ -I. -I.. -I../liboctave -I../src -I../libcruft/misc -I../dlfcn 
> > -I../dlfcn -I../glob -I../glob -DHAVE_CONFIG_H -mminimal-toc 
> > -fno-implicit-templates -g -O2 -Wall -L.. -g -o octave octave.o
> > builtins.o  ops.o ../libcruft/blas-xtra/xerbla.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 qz.o rand.o
> > schur.o sort.o svd.o syl.o time.o  oregonator.o -L../liboctave
> > -L../libcruft -L../src ../src/liboctinterp.a 
> > ../liboctave/liboctave.a ../libcruft/libcruft.a
> > ../readline/libreadline.a  ../kpathsea/libkpathsea.a ../glob/glob.o
> > ../glob/fnmatch.o  -L../dlfcn -ldlfcn -ll -lld -ll -lcurses -lm
> > -lg2c -lm 
> > -L/usr/local/gcc/lib/gcc-lib/rs6000-ibm-aix4.3.2.0/2.95.2 
> > -L/usr/local/gcc/lib -lm 

> Interesting that this manages to link, but mkoctfile can't seem to
> link. Just out of curiosity, in the mkoctfile script what are SH_LD,
> SH_LDFLAGS, and ldflags set to.

They are 

: ${SH_LD="c++"}
: ${SH_LDFLAGS="-shared"}
ldflags=

on both the linux boxes (where mkoctfile works) and RS/6k's (where
mkoctfile fails).


> I had a problem with dynamic linking that was due to having a broken
> installation of libstdc++.so. Basically, I had a libstdc++.so.2.9.0 in
> my library search path, but there was no file libstdc++.so linked to
> it. This caused the link stage to use libstdc++.a so it statically
> linked that library. Unfortunately this made it so that I couldn't
> create .oct files. It took me a long time to figure out what was going
> wrong, but once I figured it out, I came up with a work around. (I
> don't have root on the machine, and so far I haven't been able to
> persuade anyone who does that it is important).

This is revealing information; when I issue
  find /usr/local/gcc/lib -name "lib*"
I see that every library file either ends with ".a" or "a.2.10.0".
There's not a single .so or .so.XX library!  This must explain
why the shared objects never load.  Time to go back and rebuild 
gcc with a different setup (I think  configure  --enable-shared is
what gcc needs).    -- Al



-------------------------------------------------------------
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
-------------------------------------------------------------



reply via email to

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