我在一个操作系统为CentOS的集群上本地安装了gcc 5.1版本,在那里我没有root访问权限(所以我不能使用任何像"sudo
"这样的命令)。(安装的全局gcc版本是4.4)。我还修改了路径变量,在路径变量的开头包含我的本地版本的路径。以前,当我尝试使用全局版本安装boost时,它运行良好。但现在,当我尝试安装boost时,它显示以下错误:
/users/home/head/cmp/soft/sft/gcc/bin/../libexec/gcc/x86_64-unknown-linux-gnu/5.1.0/cc1: error while loading shared libraries: libisl.so.10: cannot open shared object file: No such file or directory
任何关于如何解决这个问题的想法都将受到高度赞赏。
按照https://gcc.gnu.org/wiki/InstallingGCC
特别是,不要在某些非标准路径中手动安装ISL,因为GCC需要在运行时找到其共享库。
最简单的解决方案是使用download_prerequisites
脚本将GMP、MPFR、MPC和ISL源代码添加到GCC源代码树中,这将使GCC自动为您构建它们,并静态链接到它们。
我也有同样的问题。我解决了如下问题:
-
下载这里可用的isl源代码
-
解压缩并安装:
./configure && make && make install
-
cp /usr/local/lib/libisl* /usr/lib
-
注意:符号链接也有效:
$cd/usr/lib
$ln-s/usr/local/lib/libisl.so.10 libisl.so.10
-
-
你可以在Debian发行版中做同样的事情:
apt-get-install libisl-dev
-
调整共享库的引用:
$cp/usr/local/lib/libisl*/usr/lib
-
注意:符号链接也有效:
$cd/usr/lib
$ln-s/usr/local/lib/libisl.so.10 libisl.so.10
-