我正在寻求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
我在这个论坛中尝试了所有其他类似的关于链接的问题,但我无法解决它。我在我的电脑中指定了Lapack
和Lblas
的路径也写了......
LAPACK_LIB= -L/usr/lib/ -llapack -lblas
它不起作用。请帮我解决这个问题。
提前致谢。
答案 0 :(得分:44)
在Ubuntu 14.04上确保你有软件包
安装。在那之后," -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
我知道这是旧帖子。但是我花了很多时间来解决这个问题,最后,这非常简单。我希望其他有相同问题的人可以很快解决此问题。