【发布时间】:2017-03-18 05:28:52
【问题描述】:
我试图在我的 Ubuntu 14.04 中安装 Armadillo。
我在终端中的犰狳文件所在的文件夹中运行cmake . 命令,然后运行make 命令。我收到以下错误。
/usr/bin/ld: /usr/local/lib/libsuperlu.a(util.c.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object;
recompile with -fPIC
/usr/local/lib/libsuperlu.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [libarmadillo.so.7.800.1] Error 1
make[1]: *** [CMakeFiles/armadillo.dir/all] Error 2
make: *** [all] Error 2
我该如何纠正这个问题?
【问题讨论】:
-
sudo apt-get install libarmadillo-dev从发行版中获取正确构建的二进制包有什么问题? -
@DirkEddelbuettel,我正在尝试安装更新的版本。 apt-get 中的 SuperLu 和犰狳相当老,犰狳版本不识别旧的 superLu 版本
-
即便如此,您也可以做很多比下载sources of the current package 并构建它。或者甚至采取the Debian sources。
标签: makefile installation cmake ubuntu-14.04 armadillo