/usr/bin/ld: cannot find -lopenblas
001、问题
安装软件 make过程中出现如下错误:
/usr/bin/ld: cannot find -lgsl
/usr/bin/ld: cannot find -lopenblas

002、问题分析
出现类似的这种报错,一般是找不到对应的库文件,比如上面的提示对应如下的两个库文件:
libgsl.so
libopenblas.so
003、利用locate快速定位系统是否有以上两个库文件
[root@pc1 src]# locate libgsl
[root@pc1 src]# locate libopenblas ## 可以看到没有以上两个库文件
[root@pc1 src]#

004、安装libopenblas库文件,方法如下:
[root@pc1 src]# yum -y install openblas openblas-devel ## 没有安装成功,可能是

005、安装epel-release(extra package for enterprise linux), 方法如下:
[root@pc1 src]# yum -y install epel-release ## 安装企业linux的额外包

006、再次安装libopenblas库文件
[root@pc1 src]# yum -y install openblas openblas-devel ## 这次安装成功

007、再次make测试检验:
[root@pc1 src]# make ## 可以看到刚才没有找到库的错误消失了 cc baseprog.o mcio.o egsubs.o admutils.o h2d.o eigensrc/exclude.o nicksrc/libnick.a -lgsl -lopenblas -lm -lpthread -o baseprog /usr/bin/ld: cannot find -lgsl collect2: error: ld returned 1 exit status make: *** [baseprog] Error 1

008、同样道理,解决libgs库的方法同样是安装该库
[root@pc1 EIG-7.2.1]# yum -y install gsl gsl-devel ## 安装成功

009、make测试
[root@pc1 src]# make ## 所有的报错均消失

。

浙公网安备 33010602011771号