问题场景:
CentOS 7装有4.4.5,4.4.7,4.8.5 三个版本的gcc,当前版本为4.4.7,通过gcc –version命令查看得到。4.4.7版本缺少libgmp.so.3文件,编译fastdfs libfastcommon-1.0.35包时发现该问题,
[[email protected] libfastcommon-1.0.35]# ./make.sh
/usr/libexec/gcc/x86_64-redhat-Linux/4.4.7/cc1: error while loading shared libraries: libgmp.so.3: cannot open shared object file: No such file or directory
./make.sh:行15: ./a.out: 没有那个文件或目录
cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o hash.o hash.c
/usr/libexec/gcc/x86_64-redhat-Linux/4.4.7/cc1: error while loading shared libraries: libgmp.so.3: cannot open shared object file: No such file or directory
make: *** [hash.o] 错误 1
另外,在/usr/libexec/gcc/x86_64-redhat-Linux/4.4.7中,ldd cc1时也能发现该信息。
解决:
决定清除有问题的老版本,保留4.8.5(该版本为系统所带,其他低版本可能为某种需要被他人安装)。
1、 找到已安装的包
rpm –q gcc