我在arch linux上安装了gcc-fortran
当尝试使用gfortran helloWorld.f90
编译hello world程序时,此文件只是
Program Hello
Print *, "Hello World!"
End Program Hello
我明白了:
/usr/lib/gcc/x86_64-pc-linux-gnu/7.2.1/f951: error while loading shared libraries: libmpfr.so.6: cannot open shared object file: No such file or directory
这是gcc中缺少的组件吗?我猜libmpfr在某种程度上不见了?我看到安装了gcc-libs。
答案 0 :(得分:0)
这是gcc的缺失部分吗?
GCC requires一些不由GCC托管的托管库。问题通常是在通过运行./contrib/download_prerequisites
配置GCC之前未添加这些库。
此脚本会将适当版本的GMP,MPC,MPFR下载到GCC源代码树中,并在构建适当的编译器之前对其进行树内构建,并且还将触发通过GCC安装来安装这些主机库。 / p>
但是,如果在安装MPFR之后使用--with-mpfr=
等进行配置,则该lib存在于 build 计算机上,但不一定存在于 host 计算机上,即应该运行要编译的编译器的机器。因此,在使用--with-mpfr=
,--with-gmp=
等时,必须格外小心,以确保在运行编译器之前这些依赖关系已得到解决。