C++ error while compiling octave 3.0.3 from source, using SuiteSparse

Kennel, Matthew B MatthewKennel at fairisaac.com
Fri Jan 30 12:59:26 CST 2009


Hi, I installed the suitesparse library and am attempting to build Octave 3.0.3 from source. (I do not have root access to machines and I am not
permitted to install binary packages so that is not an option.).   I have successfully compiled it without suitesparse using default options.

I am experiencing C++ errors here:

g++ -c -I/apps/usr/local64/include -fPIC -I. -I.. -I../liboctave -I../src -I../libcruft/misc  -DHAVE_CONFIG_H  -Wall -W -Wshadow -Wold-style-cast -g -O2 SparsedbleLU.cc -o pic/SparsedbleLU.o
CSparse.cc: In member function 'ComplexMatrix SparseComplexMatrix::fsolve(MatrixType&, const Matrix&, octave_idx_type&, double&, void (*)(double), bool) const':
CSparse.cc:5769: error: invalid conversion from 'void (*)(int, char*, int, char*)' to 'void (*)(int, const char*, int, const char*)'
CSparse.cc: In member function 'SparseComplexMatrix SparseComplexMatrix::fsolve(MatrixType&, const SparseMatrix&, octave_idx_type&, double&, void (*)(double), bool) const':
CSparse.cc:6012: error: invalid conversion from 'void (*)(int, char*, int, char*)' to 'void (*)(int, const char*, int, const char*)'
CSparse.cc: In member function 'ComplexMatrix SparseComplexMatrix::fsolve(MatrixType&, const ComplexMatrix&, octave_idx_type&, double&, void (*)(double), bool) const':
CSparse.cc:6303: error: invalid conversion from 'void (*)(int, char*, int, char*)' to 'void (*)(int, const char*, int, const char*)'
CSparse.cc: In member function 'SparseComplexMatrix SparseComplexMatrix::fsolve(MatrixType&, const SparseComplexMatrix&, octave_idx_type&, double&, void (*)(double), bool) const':
CSparse.cc:6525: error: invalid conversion from 'void (*)(int, char*, int, char*)' to 'void (*)(int, const char*, int, const char*)'
dSparse.cc: In member function 'Matrix SparseMatrix::fsolve(MatrixType&, const Matrix&, octave_idx_type&, double&, void (*)(double), bool) const':
dSparse.cc:5985: error: invalid conversion from 'void (*)(int, char*, int, char*)' to 'void (*)(int, const char*, int, const char*)'
dSparse.cc: In member function 'SparseMatrix SparseMatrix::fsolve(MatrixType&, const SparseMatrix&, octave_idx_type&, double&, void (*)(double), bool) const':
dSparse.cc:6201: error: invalid conversion from 'void (*)(int, char*, int, char*)' to 'void (*)(int, const char*, int, const char*)'
dSparse.cc: In member function 'ComplexMatrix SparseMatrix::fsolve(MatrixType&, const ComplexMatrix&, octave_idx_type&, double&, void (*)(double), bool) const':
dSparse.cc:6463: error: invalid conversion from 'void (*)(int, char*, int, char*)' to 'void (*)(int, const char*, int, const char*)'
dSparse.cc: In member function 'SparseComplexMatrix SparseMatrix::fsolve(MatrixType&, const SparseComplexMatrix&, octave_idx_type&, double&, void (*)(double), bool) const':
dSparse.cc:6697: error: invalid conversion from 'void (*)(int, char*, int, char*)' to 'void (*)(int, const char*, int, const char*)'
make[2]: *** [pic/CSparse.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [pic/dSparse.o] Error 1
make[2]: Leaving directory `/work/falcon7/mbk/downloaded_software/octave-3.0.3/liboctave'
make[1]: *** [liboctave] Error 2
make[1]: Leaving directory `/work/falcon7/mbk/downloaded_software/octave-3.0.3'
make: *** [all] Error 2

It appears to be a const vs non const problem.  Has anybody seen this recently?  Is there a fix?

Octave configure line:

./configure --prefix=/apps/usr/local64 --with-blas=/apps/usr/local64/lib/libgoto.a CPPFLAGS="-I/apps/usr/local64/include" LDFLAGS="-L/apps/usr/local64/lib/" LIBS="-lmetis -lpthread"



[e28425 at lux172 octave-3.0.3]% g++ -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --enable-plugin --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=x86_64-redhat-linux
Thread model: posix
gcc version 4.1.2 20071124 (Red Hat 4.1.2-42)

Platform: Redhat Enterprise Linux 5.x, x86_64

[e28425 at lux172 octave-3.0.3]% uname -a
Linux lux172 2.6.18-92.el5 #1 SMP Tue Apr 29 13:16:15 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux


Matthew B. Kennel, PhD 
Analytic Science-Lead Scientist 
Fraud Analytics, Fair Isaac Corporation 
3661 Valley Centre Dr,  San Diego, California, 92130 USA 858-369-8455, FAX: 858-369-8012 

This email and any files transmitted with it are confidential, proprietary
and intended solely for the individual or entity to whom they are addressed.
If you have received this email in error please delete it immediately.




More information about the Help-octave mailing list