我正在尝试安装" TAUCS" (http://www.tau.ac.il/~stoledo/taucs/)图书馆。但是,我收到了以下错误:
/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
以及更多错误。
我猜主要错误是无法找到lg2c。
我想我已使用gcc
使用gfortran
代替g77
。我在哪里可以找到g2c.a
?
在软件管理器中搜索返回没有结果。在谷歌搜索给了我除了我正在寻找的其他一切。
更新: 我可以按照描述安装g77。
However, that still leaves an error:
/usr/bin/ld: skipping incompatible external/lib/linux/liblapack.a when searching for -llapack
/usr/bin/ld: skipping incompatible external/lib/linux/liblapack.a when searching for -llapack
/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/libf77blas.a when searching for -lf77blas
/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/libcblas.a when searching for -lcblas
/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/libatlas.a when searching for -latlas
/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
/usr/bin/ld: skipping incompatible external/lib/linux/libmetis.a when searching for -lmetis
/usr/bin/ld: skipping incompatible external/lib/linux/libmetis.a when searching for -lmetis
obj/linux/taucs_c99_complex_test build/linux/taucs_config_tests.h
C99 complex numbers seem to be supported, 1+sqrt(-1)=-1.000000+1.000000i
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>
^
compilation terminated.
make: [build/linux/taucs_config_tests.h] Error 1 (ignored)
cc \
-oobj/linux/taucs_cilk_test \
obj/linux/taucs_cilk_test.o -L external/lib/linux -llapack -L external/lib/linux -lf77blas -lcblas -latlas -L external/lib/linux -lmetis -lg2c -lm
cc: error: obj/linux/taucs_cilk_test.o: No such file or directory
make: [build/linux/taucs_config_tests.h] Error 1 (ignored)
obj/linux/taucs_cilk_test build/linux/taucs_config_tests.h
make: obj/linux/taucs_cilk_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/ \
-DTAUCS_CORE_GENERAL \
src/taucs_sn_llt.c \
-oobj/linux/taucs_sn_llt.o
src/taucs_sn_llt.c:1339:1: error: ‘tree_first_descendant’ defined but not used [-Werror=unused-function]
tree_first_descendant(int j,
^
cc1: all warnings being treated as errors
make: *** [obj/linux/taucs_sn_llt.o] Error 1
答案 0 :(得分:1)
以下是我安装TAUCS库所做的工作
1)下载代码的2.2版,使用外部库,tgz格式
wget http://www.tau.ac.il/~stoledo/taucs/2.2/taucs_full.tgz
2)在您选择的位置打开包装
mkdir taucs_full
tar xvf taucs_full.tgz -C taucs_full
cd taucs_full
3)如果您还没有这样做,请安装libf2c2-dev(对于libf2c)
sudo apt-get install libf2c2-dev
4)从全局编译器选项文件中删除-Werror标志(会有警告,因此如果我们将它们视为错误,它将永远不会构建)
sed -i 's/-Werror//g' config/linux.mk
5)现在运行配置脚本
./configure
6)最后,我们需要为实际的make
做一些命令和库争论make "CC=gcc" "FC=gfortran" "LIBF77=-Wl,-Bstatic -lf2c -Wl,-Bdynamic -lgfortran"
你应该在./bin/linux中获得二进制可执行文件 - 如果你只是尝试运行,它会给出这样的信息:
$ bin/linux/taucs_run
taucs_run: there is no matrix!
这个答案的功劳必须从askubuntu.com
转到@steeldriver答案 1 :(得分:0)
尝试安装g77。
我做了以下事情: 1)从这里下载64位的g77 http://www.ziddu.com/download/16792814/g77_x64_debian_and_ubuntu.tar.gz.html
您可以相应地选择32位。
2)然后做了以下事情:
tar -xzvf g77_x64_debian_and_ubuntu.tar.gz
cd g77_x64_debian_and_ubuntu
chmod +x ./install.sh
./install.sh
(答案改编自askubuntu)