I'm trying to get the CVS to compile with all the sparse matrix
features on a Xandros (debian) box. I'm having trouble with
cholmod and metis.
Here is my story, and where I got stuck.
First, I needed to patch ./configure.in
address@hidden:~/octave$ cvs diff ./configure.in
Index: configure.in
===================================================================
RCS file: /cvs/octave/configure.in,v
retrieving revision 1.491
diff -r1.491 configure.in
839c839
< AMD_LIBS $COLAMD_LIBS $CCOLAMD_LIBS $BLAS_LIBS $FLIBS -lmetis)],
---
> $AMD_LIBS $COLAMD_LIBS $CCOLAMD_LIBS $BLAS_LIBS $FLIBS -lmetis)],
Next, I did the following (from my .bash_history)
# Get normal libs
apt-get install libreadline5-dev
apt-get install gperf flex bison dejagnu
# Get ufsparse - not available for debian
wget
ftp://ftp.pbone.net/mirror/download.fedora.redhat.com/pub/fedora/linux/extras/development/i386/ufsparse-0.9-3.fc5.i386.rpm
alien -i ufsparse-0.9-3.fc5.i386.rpm
wget
ftp://ftp.pbone.net/mirror/download.fedora.redhat.com/pub/fedora/linux/extras/development/i386/ufsparse-devel-0.9-3.fc5.i386.rpm
alien -i ufsparse-devel-0.9-3.fc5.i386.rpm
# Get metis
cd ~
wget http://www-users.cs.umn.edu/~karypis/metis/metis/files/metis-4.0.tar.gz
tar xfz metis-4.0.tar.gz
cd metis-4.0
vi Lib/rename.h # NEED TO EDIT __log2 to __int_log2 TO AVOID CONFLICT
make
cp libmetis.a /usr/local/lib/
cp */*.h /usr/local/include/metis/
chmod a+r /usr/local/include/metis/* /usr/local/lib/libmetis.a
vi /usr/local/include/metis/metis.h # NEED TO EDIT "metis/" INTO 4 LAST
INCLUDES
My trouble now is the following (from config.log):
configure:14265: checking for cholmod_start in -lcholmod
configure:14303: gcc -o conftest -g -O2 conftest.c -lcholmod -lamd -lcolamd
-lccolamd -lblas -L/usr/lib/gcc-lib/i486-linux/3.3.5
-L/usr/lib/gcc-lib/i486-linux/3.3.5/../../.. -lz -lfrtbegin -lg2c-lm -lgcc_s -lmetis
-lz -lm >&5
/usr/lib/libc_nonshared.a(elf-init.oS)(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0):
In function `__i686.get_pc_thunk.bx':
: multiple definition of `__i686.get_pc_thunk.bx'
/usr/lib/gcc-lib/i486-linux/3.3.5/../../../libcholmod.a(cholmod_common.o)(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0):
first defined here
Any ideas?