From owner-bug-octave at bevo dot che dot wisc dot edu Mon Dec 23 04:24:28 1996 Subject: problem linking octave on FreeBSD 2.2 From: Ali Rahimi To: bug-octave at bevo dot che dot wisc dot edu Date: Mon, 23 Dec 1996 02:19:58 -0800 Hi. I am getting the following link error. As before, I ran configure with no arguments, and gmake with no arguments. This is a freshly unpacked octave with on minor modification to circumvent the ONLCR problem I mentioned before. deceit:/home/tmp/octave-2.0> uname -a FreeBSD deceit.xcf.berkeley.edu 2.2-961006-SNAP FreeBSD 2.2-961006-SNAP #0: Tue Oct 29 01:15:38 PST 1996 jmacd at deceit dot xcf dot berkeley dot edu:/home3/current-src/sys/compile/DECEIT i386 After failing a link, this is what happens after I type gmake again: ********************************************************** * * * To compile Octave, you will need a recent version of * * GNU Make. * * * * You will also need g++ and libg++. * * * * This version of Octave has been developed with * * version 2.7.2. You probably won't get very far * * with earlier versions. Later versions may work, * * but C++ is still evolving, so don't be too surprised * * if you run into some trouble. * * * * Now would be a good time to read INSTALL.OCTAVE if * * you have not done so already. * * * ********************************************************** gmake -f octMakefile all gmake[1]: Entering directory `/home/tmp/octave-2.0' echo making all in info making all in info cd info ; gmake all gmake[2]: Entering directory `/home/tmp/octave-2.0/info' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/home/tmp/octave-2.0/info' echo making all in readline making all in readline cd readline ; gmake all gmake[2]: Entering directory `/home/tmp/octave-2.0/readline' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/home/tmp/octave-2.0/readline' echo making all in glob making all in glob cd glob ; gmake all gmake[2]: Entering directory `/home/tmp/octave-2.0/glob' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/home/tmp/octave-2.0/glob' echo making all in kpathsea making all in kpathsea cd kpathsea ; gmake all gmake[2]: Entering directory `/home/tmp/octave-2.0/kpathsea' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/home/tmp/octave-2.0/kpathsea' echo making all in libcruft making all in libcruft cd libcruft ; gmake all gmake[2]: Entering directory `/home/tmp/octave-2.0/libcruft' echo making all in balgen making all in balgen cd balgen; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/balgen' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/balgen' echo making all in blas making all in blas cd blas; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/blas' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/blas' echo making all in dassl making all in dassl cd dassl; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/dassl' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/dassl' echo making all in eispack making all in eispack cd eispack; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/eispack' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/eispack' echo making all in fftpack making all in fftpack cd fftpack; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/fftpack' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/fftpack' echo making all in fsqp making all in fsqp cd fsqp; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/fsqp' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/fsqp' echo making all in lapack making all in lapack cd lapack; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/lapack' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/lapack' echo making all in linpack making all in linpack cd linpack; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/linpack' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/linpack' echo making all in minpack making all in minpack cd minpack; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/minpack' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/minpack' echo making all in misc making all in misc cd misc; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/misc' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/misc' echo making all in npsol making all in npsol cd npsol; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/npsol' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/npsol' echo making all in odepack making all in odepack cd odepack; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/odepack' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/odepack' echo making all in qpsol making all in qpsol cd qpsol; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/qpsol' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/qpsol' echo making all in quadpack making all in quadpack cd quadpack; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/quadpack' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/quadpack' echo making all in ranlib making all in ranlib cd ranlib; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/ranlib' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/ranlib' echo making all in slatec-fn making all in slatec-fn cd slatec-fn; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/slatec-fn' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/slatec-fn' echo making all in villad making all in villad cd villad; gmake all gmake[3]: Entering directory `/home/tmp/octave-2.0/libcruft/villad' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/home/tmp/octave-2.0/libcruft/villad' gmake[2]: Leaving directory `/home/tmp/octave-2.0/libcruft' echo making all in liboctave making all in liboctave cd liboctave ; gmake all gmake[2]: Entering directory `/home/tmp/octave-2.0/liboctave' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/home/tmp/octave-2.0/liboctave' echo making all in src making all in src cd src ; gmake all gmake[2]: Entering directory `/home/tmp/octave-2.0/src' c++ -I. -I.. -I../liboctave -I../src -I../glob -I../libcruft/misc -DHAVE_CONFIG_H -fno-implicit-templates -mieee-fp -g -O2 -Wall -L.. -mieee-fp -g -o octave \ octave.o builtins.o balance.o chol.o colloc.o dassl.o det.o eig.o expm.o fft.o fft2.o filter.o find.o fsolve.o fsqp.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 npsol.o pinv.o qpsol.o qr.o quad.o qzval.o rand.o schur.o sort.o svd.o syl.o time.o \ -L../liboctave -L../libcruft -L../readline -L../kpathsea -L../glob -L../dlfcn -L. \ -loctinterp -loctave -ltinst -lcruft -lreadline -lkpathsea -lglob \ -lf2c /usr/lib/libgcc.a -ltermcap -lm -lg++ SLStack.h:60: Undefined symbol `__vt$t7SLStack1Zi' referenced from text segment Stack.h:49: Undefined symbol `__vt$t5Stack1Zi' referenced from text segment SLStack.h:60: Undefined symbol `__vt$t7SLStack1ZP5token' referenced from text segment Stack.h:49: Undefined symbol `__vt$t5Stack1ZP5token' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1ZP5token' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1Zi' referenced from text segment SLStack.h:60: Undefined symbol `__vt$t7SLStack1Zi' referenced from text segment Stack.h:49: Undefined symbol `__vt$t5Stack1Zi' referenced from text segment SLStack.h:60: Undefined symbol `__vt$t7SLStack1Zt12basic_string2ZcZt18string_char_traits1Zc' referenced from text segment Stack.h:49: Undefined symbol `__vt$t5Stack1Zt12basic_string2ZcZt18string_char_traits1Zc' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1Zt12basic_string2ZcZt18string_char_traits1Zc' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1ZP10symbol_def' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1ZUi' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1ZP10symbol_def' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1ZUi' referenced from text segment SLStack.h:58: Undefined symbol `__vt$t7SLStack1ZP10symbol_def' referenced from text segment SLStack.h:58: Undefined symbol `__vt$t7SLStack1ZUi' referenced from text segment SLStack.h:60: Undefined symbol `__vt$t7SLStack1Zt12basic_string2ZcZt18string_char_traits1Zc' referenced from text segment Stack.h:49: Undefined symbol `__vt$t5Stack1Zt12basic_string2ZcZt18string_char_traits1Zc' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1Zt12basic_string2ZcZt18string_char_traits1Zc' referenced from text segment SLStack.h:60: Undefined symbol `__vt$t7SLStack1Z11unwind_elem' referenced from text segment Stack.h:49: Undefined symbol `__vt$t5Stack1Z11unwind_elem' referenced from text segment SLStack.h:56: Undefined symbol `__vt$t7SLStack1Z11unwind_elem' referenced from text segment gmake[2]: *** [octave] Error 1 gmake[2]: Leaving directory `/home/tmp/octave-2.0/src' gmake[1]: *** [src] Error 2 gmake[1]: Leaving directory `/home/tmp/octave-2.0' gmake: *** [all] Error 2 i have no idea why you would have these missing vtables under freebsd but not under linux. as a possible hint, ld take about 50 megs of ram at times when performing this link. could this be a freebsd linker bug? Ali.