help-octave
[Top][All Lists]
Advanced

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

Compiling 2.1.14


From: etienne grossmann
Subject: Compiling 2.1.14
Date: Sat, 4 Sep 1999 21:31:20 +0100 (WEST)

  Hello again,

  I think I found where the problem was : after a quick inspection of
liboctave/mx-inlines.cc, it seemed to me that the "extern"
declarations where misplaced, so I removed them. Doing "make" and
"make install" then worked.

  Is this patch needed just by me?

======================================================================
--- liboctave/mx-inlines.cc.090499      Sat Sep  4 20:10:41 1999
+++ liboctave/mx-inlines.cc     Sat Sep  4 20:11:11 1999
@@ -42,7 +42,7 @@
 VS_OP_FCN (divide,   /)
 
 #define VS_OP(F, OP, R, V, S) \
-  extern template void F ## _vs (R *, const V *, size_t, S); \
+  template void F ## _vs (R *, const V *, size_t, S); \
   static inline R * \
   F (const V *v, size_t n, S s) \
   { \
@@ -81,7 +81,7 @@
 SV_OP_FCN (divide,   /)
 
 #define SV_OP(F, OP, R, S, V) \
-  extern template void F ## _sv (R *, S, const V *, size_t); \
+  template void F ## _sv (R *, S, const V *, size_t); \
   static inline R * \
   F (S s, const V *v, size_t n) \
   { \
@@ -120,7 +120,7 @@
 VV_OP_FCN (divide,   /)
 
 #define VV_OP(F, OP, R, T1, T2) \
-  extern template void F ## _vv (R *, const T1 *, const T2 *, size_t); \
+  template void F ## _vv (R *, const T1 *, const T2 *, size_t); \
   static inline R * \
   F (const T1 *v1, const T2 *v2, size_t n) \
   { \
======================================================================

  Cheers,


  Etienne

The original error message :
> ======================================================================
> 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 ops.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 \
> -L../liboctave -L../libcruft -L../src -Xlinker -rpath -Xlinker 
> /usr/local/lib/octave-2.1.14 \
> ../src/liboctinterp.a ../liboctave/liboctave.a  ../libcruft/libcruft.a  
> ../readline/libreadline.a ../kpathsea/libkpathsea.a ../glob/libglob.a  \
> -lg2c -lm -L/usr/lib/gcc-lib/i386-linux/2.95 -lm  -lncurses -ldl -lm 
> ../liboctave/liboctave.a(CColVector.o): In function 
> `operator+(ComplexColumnVector const &, double)':
> /home/etienne/prog/octave/octave-2.1.14/liboctave/mx-inlines.cc:66: undefined 
> reference to `void add_vs<complex<double>, complex<double>, 
> double>(complex<double> *, complex<double> const *, unsigned int, double)'
> 
>   ... many "undefined reference" messages ...
> 
> /home/etienne/prog/octave/octave-2.1.14/liboctave/mx-s-cm.cc:32: undefined 
> reference to `void divide_sv<complex<double>, double, complex<double> 
> >(complex<double> *, double, complex<double> const *, unsigned int)'
> collect2: ld returned 1 exit status
> ======================================================================



---------------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.  To ensure
that development continues, see www.che.wisc.edu/octave/giftform.html
Instructions for unsubscribing: www.che.wisc.edu/octave/archive.html
---------------------------------------------------------------------



reply via email to

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