7

我在一个集群上本地安装了 gcc 5.1 版,操作系统为 CentOS,我没有 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

任何有关如何解决此问题的想法都将受到高度赞赏。

4

2 回答 2

4

按照https://gcc.gnu.org/wiki/InstallingGCC上的说明进行操作

具体来说,不要在一些非标准路径中手动安装 ISL,因为 GCC 需要在运行时找到它的共享库。

最简单的解决方案是使用download_prerequisites脚本将 GMP、MPFR、MPC 和 ISL 源代码添加到 GCC 源代码树中,这将导致 GCC 自动为您构建它们,并静态链接到它们。

于 2015-11-16T13:00:19.783 回答
3

我有同样的问题。我解决了如下:

  1. 在此处下载可用的 isl 源代码

  2. 解压并安装: ./configure && make && make install

  3. cp /usr/local/lib/libisl* /usr/lib

    • 注意:符号链接也可以:

      $ cd /usr/lib

      $ ln -s /usr/local/lib/libisl.so.10 libisl.so.10

  4. 你可以在 Debian 发行版中做同样的事情:

    apt-get 安装 libisl-dev

  5. 调整共享库的引用:

    $ cp /usr/local/lib/libisl* /usr/lib

    • 注意:符号链接也可以:

      $ cd /usr/lib

      $ ln -s /usr/local/lib/libisl.so.10 libisl.so.10

于 2019-04-13T17:28:23.553 回答