/ usr / bin / ld:找不到-llapack

时间:2014-11-20 06:33:34

标签: linux

我正在寻求ubuntu 14.04中的安装帮助。我正在我的电脑上安装一个包。他们有自己的文件。我必须运行make。

当我这样做时,我发现错误就像......

gfortran -O2 -fopenmp -msse2 -o nmbnd.run p_nmbnd.o i_main.o m_getwsr.o ../IOLIB/*.o ../ATOM/*.o ../BNDASA/*.o ../EXTENS/*.o ../FINDES/*.o ../LATTICE/*.o ../SAMPLE/*.o ../TETRA/*.o ../IOCTRL/*.o ../LMIO/*.o ../MAINA/*.o ../NMTO/*.o ../SYM/*.o ../TBSTR/*.o ../CHAPOT/*.o  -L/usr/share/doc/liblapack -llapack -L/usr/share/doc/libblas -lblas 
/usr/bin/ld: cannot find -llapack
/usr/bin/ld: cannot find -lblas
collect2: error: ld returned 1 exit status
make[2]: *** [nmbnd.run] Error 1
make[2]: Leaving directory `/home/santuphys/NMTO-47.ZB.28/06.gfort/MAIN'
make[1]: *** [cleanmake] Error 2
make[1]: Leaving directory `/home/santuphys/NMTO-47.ZB.28/06.gfort/MAIN'
make: *** [ooo.dep] Error 2

我在这个论坛中尝试了所有其他类似的关于链接的问题,但我无法解决它。我在我的电脑中指定了LapackLblas的路径也写了......

LAPACK_LIB=   -L/usr/lib/ -llapack  -lblas

它不起作用。请帮我解决这个问题。

提前致谢。

3 个答案:

答案 0 :(得分:44)

在Ubuntu 14.04上确保你有软件包

  • liblapack-dev的
  • liblapack3
  • libopenblas基
  • libopenblas-dev的

安装。在那之后," -L / usr / lib -llapack -lblas"应该管用。另请注意,正如另一个答案中已经提到的,在您显示的输出中,您有" -L / usr / share / doc / liblacpack -L / usr / share / doc / libblas",这当然是不是你想要的。

答案 1 :(得分:2)

只需安装包含liblapack.so。*和libblas.so。*库的软件包。 如果您确定已经安装了这些软件包 - 只需通过以下方式找到它们: 找到/ -name'liblapack *'并使用-L / path / to / liblapack将该路径添加到gcc。

编辑:在你的fortran编译器调用中有一些用-L给出的目录 - 但是你确定所需的库位于 documentation 目录中: -L / usr / share / doc / liblapack -L / usr / share / doc / libblas ?

答案 2 :(得分:0)

我的错误是这样的:

  

/ usr / bin / ld:找不到-lgfortran

我解决了here上此帖子之后的问题

sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/4.9/libgfortran.so /usr/lib/libgfortran.so

我知道这是旧帖子。但是我花了很多时间来解决这个问题,最后,这非常简单。我希望其他有相同问题的人可以很快解决此问题。