gfortran找不到那里的图书馆

时间:2012-08-01 06:20:05

标签: fortran gfortran

我无法将程序链接到库中。我之前从未这样做过,所以我可能做了一些愚蠢的事情,但据我所知,我做的是正确的事情。我需要将我的程序foo.f90链接到库libbar.a,该库位于我的主目录下的其他目录中。我输入命令:

gfortran -c foo.f90
gfortran -o foo foo.f90 -L/directory/of/library -llibbar.a

但是这引发了:

ld: library not found for -llibhealpix.a

当然libhealpix.a是真实的图书馆(而不是libbar.a

关于为什么会发生这种情况的任何想法?

1 个答案:

答案 0 :(得分:13)

尝试-lbar(或者-lhealpix,如果那是真正的图书馆名称)。

-lxyz会搜索名为libxyz.a的文件。因此,如果您指定-llibbar.a,则该文件需要命名为liblibbar.a.a

您还可以在gfortran命令行中指定存档文件的路径和全名:gfortran -o foo foo.f90 /directory/of/library/libbar.a