From bug-octave-request at bevo dot che dot wisc dot edu Tue Nov 18 12:02:45 2003 Subject: Can't compile octave-2.1.51 with glibc-2.3.2 compiled with gcc-3.3.2 From: "John W. Eaton" To: Juergen Rose Cc: bug-octave at bevo dot che dot wisc dot edu Date: Tue, 18 Nov 2003 12:02:39 -0600 On 17-Nov-2003, Juergen Rose wrote: | after configuring octave-2.1.51 with | | ./configure --enable-readline --with-g77 | | compiling with glibc-2.3.2 compiled with gcc-3.3.2, results in: | | g++ -I. -I.. -I../liboctave -I../src -I../libcruft/misc -I../glob | -I../glob -DHAVE_CONFIG_H -mieee-fp -Wall -Wshadow -g -O2 \ | -L.. -fPIC -o octave \ | main.o balance.o besselj.o betainc.o chol.o colloc.o daspk.o | dasrt.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 kron.o lpsolve.o lsode.o lu.o | minmax.o odessa.o pinv.o qr.o quad.o qz.o rand.o schur.o sort.o | sqrtm.o svd.o syl.o time.o \ | -L../liboctave -L../libcruft -L../src -Wl,-rpath | -Wl,/usr/local/lib/octave-2.1.51 \ | ../src/liboctinterp.a ../liboctave/liboctave.a ../libcruft/libcruft.a | ../glob/glob.o ../glob/fnmatch.o \ | -lfftw -lreadline -lncurses -lhdf5 -lz -lm | -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2 | -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/../../../../i686-pc-linux-gnu/lib -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/../../.. -lhdf5 -lz -lfrtbegin -lg2c -lm -lgcc_s | /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/../../../libieee.a(.data+0x0): | multiple definition of `_LIB_VERSION' | /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/../../../libm.a(s_lib_version.o)(.data+0x0): first defined here | ../liboctave/liboctave.a(file-ops.o)(.text+0xda2): In function | `file_ops::tempnam(std::basic_string, | std::allocator > const&, std::basic_string, std::allocator > const&, | std::basic_string, std::allocator | >&)': | /usr/src_moen/Mathematics/octave-2.1.51/liboctave/file-ops.cc:335: | warning: the use of `tempnam' is dangerous, better use `mkstemp' | collect2: ld returned 1 exit status | make[2]: *** [octave] Error 1 | | Neither recompiling all libs (fftw, readline, ncurses, hdf5, zlib) nor | upgrading (autoconf-2.59, automake-1.7.9, libtool-1.5) removes that | problem. I am waiting for your help. Octave does not define _LIB_VERSION (note that the locations of the multiple defintions are not in Octave code), so it looks like a compiler problem not an Octave bug. OTOH, I am using "gcc version 3.3.2 (Debian)" and don't see this problem, so I think it should be possible to use gcc 3.3.2 to build Octave. jwe ------------------------------------------------------------- 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 -------------------------------------------------------------