GCC编译器再次出错

GCC编译器再次出错

我再次尝试在运行 Irix 6.5 版本的 SGI Indy 计算机上安装编译器,这一次,我发现一个文件包含我认为需要的所有库。当我编译时,我收到一条错误消息

cc1: rld: Fatal Error: Cannot Successfully map soname 'libmpc.so.4' under any of the filenames /opt/local/gcc473/lib/libmpc.so.4:/usr/lib32/libmpcso.4 

它说了更多的目录,我将在这张照片中显示: 在此输入图像描述

我安装了预安装的编译器这里

我还将它安装到另一个没有安装 Irix 操作系统的驱动器上,这样我就有足够的空间,所以里面没有 /usr 或 /etc 目录。

感谢您的帮助,-rjhwinner03

答案1

你说“安装编译器”,我假设你不是从源代码构建它。我的建议是从源代码构建:

从 gnu.gcc.org 镜像站点下载 gcc 源 tarball。您将下载类似gcc-4.9.4.tar.gz或 的内容gcc-4.9.4.tar.bz2。获取您需要的所有版本...

重要提示:例如,如果您的 IRIX 6.5 有 gcc-3.2.3,则获取并开始使用 gcc-3.4.6,它是 gcc-3 的最后一个版本。一旦构建完成,就可以使用它来构建最后的 gcc-4.xx 版本;然后用它来构建最后版本的 gcc-5.xx 等等。

GCC 使用的 3 大依赖项是

首先构建 gmp,因为其他一切都依赖于此,然后构建 mpfr-3.1.6;然后是您缺少的 mpc-1.0.3 。 不要获取 mpfr-4.x,您在 IRIX 上不需要它,它太新了,可能会给您带来问题。

对于任何一个,./configure --help在执行之前先查看构建选项列表

  • 。/配置
  • 。/制作
  • ./进行检查
  • ./进行安装

例子:

tar -xf gmp-6.1.2.tar.bz2
cd gmp-6.1.2/
./configure --help
./configure --prefix=/opt/gmp-6.1.2
./make
./make check
./make install

export LD_LIBRARY_PATH=/opt/gmp-6.1.2/lib:$LD_LIBRARY_PATH
tar -xf mpfr-3.1.6.tar.gz 
cd mpfr-3.1.6/
./configure --help
./configure --prefix=/opt/mpfr-3.1.6 --with-gmp=/opt/gmp-6.1.2
./make
./make check
./make install

export LD_LIBRARY_PATH=/opt/mpfr-3.1.6/lib:$LD_LIBRARY_PATH
tar -xf mpc-1.1.0.tar.gz
cd mpc-1.1.0/
./configure --help
./configure --prefix=/opt/mpc-1.1.0 --with-gmp=/opt/gmp-6.1.2 --with-mpfr=/opt/mpfr-3.1.6
./make
./make check
./make install

for each gcc-#.x.x do the same process, using

LD_LIBRARY_PATH=/opt/gmp-6.1.2/lib:/opt/mpfr-3.1.2/lib:/opt/mpc-1.1.0/lib

./configure --prefix=/opt/gcc-#.x.x --with-gmp=/opt/gmp-6.1.2 --with-mpfr=/opt/mpfr-3.1.6 --with-mpc=/opt/mpc-1.1.0
./make
./make check
./make install

then be sure to set

LD_LIBRARY_PATH=/opt/gcc-#.x.x/lib64:/opt/gcc-#.x.x/lib:$LD_LIBRARY_PATH
PATH=/opt/gcc-#.x.x/bin:$PATH

before building the next version of gcc.

https://gcc.gnu.org/mirrors.html或者https://www.gnu.org/prep/ftp.html然后选择最接近的版本,然后在发行版下查找 gcc tarball。

mpc 可能比 irix 更接近 linux,这就是为什么你没有它。

相关内容