我想编写一个使用NetCDF的fortran程序。为了做到这一点,我必须将netcdf模块放在我的硬盘上,并告诉我的编译器在哪里找到它。在Synaptic中,安装了以下软件包:
netcdf-bin
nco
netcdf-doc
libnetcdf-dev
libnetcdf6特别是libnetcdf-dev承诺“在C、C++、Fortran 77和Fortran 90中开发所需的一切”;然而,我在系统的任何地方都找不到库,因此,我无法开发任何东西。图书馆可能在哪里?它们既不在/usr/share中,也不在/usr/lib中。一般情况下,我怎样才能找到包在我的机器上安装文件的位置呢?
发布于 2011-11-15 06:11:03
如果您打开Synaptic并聚焦于任何已安装的包,然后单击"Properties“按钮,您可以看到带有"Installed”选项卡的对话框。
因此,如果您通过打包系统安装libnetcdf-dev,则netcdf库位于/usr/lib/中,并在/usr/include中包含文件。
发布于 2017-06-26 22:19:37
除了使用系统工具之外,nc-config和nf还可以帮助您找到这些细节。如果netcdf是由您或组织中的其他人编译的,这可能会有所帮助。
我相信nf-config是在netcdf 4.2发布之后才开始发布的,因为fortran当时被拆分成了一个不同的包。因此,如果您未能在nc-config中找到相关的fortran信息,请检查nf-config是否存在,然后使用它。
来自netcdf 4.2发行说明:
从版本4.2开始,三个C,c++,fortran库将作为单独的包发布。
最后,这里是一个样本输出 of nc-config --all:
This netCDF 4.2.1.1 has been built with the following features:
--cc -> gcc
--cflags -> -I/usr/local/include -I/share/ed/local/spike/include
--libs -> -L/usr/local/lib -lnetcdf
--has-c++ -> no
--cxx ->
--has-c++4 -> yes
--cxx4 -> g++
--fc -> gfortran
--fflags -> -g -O2 -I/usr/local/include
--flibs -> -L/usr/local/lib -lnetcdff -lnetcdf -lnetcdf
--has-f90 -> yes
--has-dap -> yes
--has-nc2 -> yes
--has-nc4 -> yes
--has-hdf5 -> yes
--has-hdf4 -> no
--has-pnetcdf-> no
--has-szlib ->
--prefix -> /usr/local
--includedir-> /usr/local/include
--version -> netCDF 4.2.1.1左列有可以发送到nc-config而不是--all的选项,以产生更具体的输出。
https://askubuntu.com/questions/79418
复制相似问题