prerequisites for this procedure are listed on the virtual box for Ubuntu page
wget http://www.tau.ac.il/~stoledo/taucs/2.2/taucs_full.tgz
#! /usr/bin/env bash shopt -s -o errexit export CC=gcc-4.3 rm -rf taucs_full mkdir taucs_full pushd taucs_full tar -xzf ../taucs_full.tgz pushd config patch -p0 <<-'EOF' --- linux.mk 2003-09-01 08:14:59.000000000 -0400 +++ linux.mk.new 2009-04-14 10:23:10.000000000 -0400 @@ -8,21 +8,21 @@ PATHSEP=/ DEFFLG=-D -FC = g77 -FFLAGS = -O3 -g -fno-second-underscore -Wall +FC = gfortran-4.3 +FFLAGS = -O2 -g -fno-second-underscore -Wall FOUTFLG =-o COUTFLG = -o -CFLAGS = -O3 -g -D_POSIX_C_SOURCE=199506L -Wall -pedantic -ansi -fPIC -fexceptions -D_GNU_SOURCE -CFLAGS = -g -O3 -Wall -Werror -pedantic -ansi +CFLAGS = -O2 -g -D_POSIX_C_SOURCE=199506L -Wall -pedantic -ansi -fPIC -fexceptions -D_GNU_SOURCE +CFLAGS = -g -O2 -Wall -Werror -pedantic -ansi # for some reason, -std=c99 -pedantic crashes # with the error message "imaginary constants are a GCC extension" # (seems to be a gcc bug, gcc 3.3.1) -CFLAGS = -O3 -Wall -Werror -std=c89 -pedantic -CFLAGS = -O3 -Wall -Werror -std=c99 +CFLAGS = -O2 -Wall -Werror -std=c89 -pedantic +CFLAGS = -O2 -Wall -std=c99 LD = $(CC) -LDFLAGS = +LDFLAGS = LOUTFLG = $(COUTFLG) AR = ar cr @@ -36,12 +36,12 @@ # -L /usr/lib/gcc-lib/i386-redhat-linux/2.96 -lg2c #LIBLAPACK = -L /home/stoledo/Public/Linux_P4SSE2/lib -llapack -LIBBLAS = -L external/lib/linux -lf77blas -lcblas -latlas -LIBLAPACK = -L external/lib/linux -llapack +LIBBLAS = -lblas +LIBLAPACK = -llapack -LIBMETIS = -L external/lib/linux -lmetis +LIBMETIS = -lmetis -LIBF77 = -lg2c +LIBF77 = LIBC = -lm ######################################################### EOF popd ./configure && make OSTYPE=linux pushd lib/linux $CC -shared -o libtaucs.so -Wl,-soname=libtaucs.so \ -Wl,-whole-archive libtaucs.a -Wl,-no-whole-archive \ -llapack -lblas -lmetis popd sudo install -m444 lib/linux/libtaucs.{a,so} /usr/lib popd