Estou tentando instalar a biblioteca "TAUCS" ( link ). No entanto, estou recebendo o seguinte erro:
/usr/bin/ld: skipping incompatible external/lib/linux/libmetis.a when searching for -lmetis
/usr/bin/ld: cannot find -lmetis
/usr/bin/ld: cannot find -lg2c
collect2: error: ld returned 1 exit status
make: [build/linux/taucs_config_tests.h] Error 1 (ignored)
obj/linux/taucs_c99_complex_test build/linux/taucs_config_tests.h
make: obj/linux/taucs_c99_complex_test: Command not found
make: [build/linux/taucs_config_tests.h] Error 127 (ignored)
cc -c -O3 -Wall -Werror -std=c99 -DMACHTYPE_ -I src/ -I build/linux/ -I external/src/ \
progs/taucs_cilk_test.c \
-oobj/linux/taucs_cilk_test.o
progs/taucs_cilk_test.c:8:19: fatal error: cilk.h: No such file or directory
#include <cilk.h>
^
mais erros seguem.
Eu acho que esse erro surge como eu já uso o gcc que usa gfortran em vez de g77.
1) Eu poderia pegar o arquivo antigo fazendo isso:
wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/libg2c0_3.4.6-6ubuntu5_i386.deb
sudo dpkg -i --force-all libg2c0_3.4.6-6ubuntu5_i386.deb
Isso criou os seguintes arquivos em / usr / lib /
libg2c.so.0
libg2c.so.0.0.0
2) Depois disso, eu encontrei link online que sugere para criar um link, assim:
cd /usr/lib
ln -s libg2c.so.0 libg2c.so
Eu acho que incluímos isso junto com
CILKC=$(CC)
Então, comentei esta linha e adicionei um link simples.
Mas recebo o seguinte erro:
build/linux/makefile:11: *** commands commence before first target. Stop.
Alguma orientação seria apreciada?
Atualização com base na resposta @steeldriver:
Depois que eu fiz como sugerido pelo usuário acima mencionado, tudo obedeceu bem. Mas, estou recebendo alguns avisos com os quais estou muito preocupado .
usr/bin/ld: skipping incompatible external/lib/linux/liblapack.a when searching for -llapack
....
/usr/bin/ld: skipping incompatible external/lib/linux/libf77blas.a when searching for -lf77blas
...
/usr/bin/ld: skipping incompatible external/lib/linux/libcblas.a when searching for -lcblas
....
/usr/bin/ld: skipping incompatible external/lib/linux/libatlas.a when searching for -latlas
....
/usr/bin/ld: skipping incompatible external/lib/linux/libmetis.a when searching for -lmetis
Eu acho que o problema poderia ser que essa biblioteca pode ser de 64 bits contra 32 bits.
É possível ter as duas versões das bibliotecas? Eu poderia colocar menos frequente em / usr / local / lib. Como eu poderia garantir que versões específicas de bibliotecas estão vinculadas no makefile?