Linux环境下(Ubuntu)Fortran语言如何安装配置NetCDF

NetCDF(Network Common Data Form)格式,简称nc格式,是一种自描述、与平台无关的二进制数据文件,特别适合多维数据的存储和交换,广泛应用于气象、海洋、地球科学等领域。本文介绍如何在Ubuntu系统下安装配置NetCDF库。

一、环境准备

操作系统:

  • Ubuntu 22.04

所需软件包:

  • Fortran编译工具:gcc,gfortran
  • CMake(可选)
  • NetCDF-C 和 NetCDF-Fortran库(从源码安装时需要)

二、安装依赖项

复制代码
sudo apt update   #

sudo apt install build-essential gfortran cmake

sudo apt install libhdf5-dev hdf5-tools

三、安装NetCDF库

  • 安装NetCDF-C(C语言接口),Ubuntu可以通过系统管包管理器直接安装

    sudo apt install libnetcdf-dev

  • 安装NetCDF-Fortran (Fortran接口),同样通过Ubuntu系统管包管理器直接安装

    sudo apt install libnetcdff-dev

四、验证安装是否成功

查看NetCDF-C 库是否安装及版本

复制代码
nc-config --version

结果显示:netCDF 4.8.1 表示已安装4.8.1版本的NetCDF-C;

查看NetCDF-Fortran 库是否安装及版本:

复制代码
nf-config --version

结果显示:netCDF-Fortran 4.5.4 表示已安装版本4.5.4版本的netCDF-Fortran;

查看Fortran编译参数信息:

复制代码
nf-config --version

会输出Fortran编译的相关信息:

五、编写Fortran程序测试NetCDF

创建文件 test.f90

复制代码
program main

    use netcdf  ! 正确模块名

    implicit none

    print *, "NetCDF version: ", nf90_inq_libvers()  ! 正确函数名

end program

六、编译运行Fortran程序

可以使用nf-config自动生成编译参数:

复制代码
gfortran test.f90 `nf-config --fflags --flibs` -o test.exe

gfortran test.f90 -o test.exe `nf-config --fflags --flibs`

或者手动指定netcdf.mod所在路径:

复制代码
gfortran test.f90 -o test.exe \

    -I/usr/include \

    -L/usr/lib \

    -lnetcdff -lnetcdf

运行命令:

复制代码
./test.exe

运行正常会输出NetCDF版本信息,例如:

NetCDF version: 4.8.1 of Sep 29 2021 09:36:14 $

这样,就说明NetCDF已经安装完成,可以在Fortran程序中正常调用,并在Linux环境中运行了。

相关推荐
qetfw1 小时前
CentOS 7 基础环境配置
linux·运维·centos
天空'之城1 小时前
Linux 系统编程 21:守护进程与日志系统全解
linux·系统编程·日志系统·守护进程
l1t2 小时前
用split命令恢复被wget -c命令误追加的zip压缩包
linux
辉灰笔记3 小时前
MySQL8 意外关机/误移data目录导致服务启动失败 PID报错/权限报错 修复文档
linux·数据库·mysql·centos
鱼听禅4 小时前
Ubuntu学习笔记-安装docker容器
学习·ubuntu·docker
ylscode5 小时前
CVE-2026-31694 漏洞深度分析:Linux 内核 FUSE 组件存在本地提权风险,普通用户可直取 root 权限
linux·运维·服务器
无足鸟ICT6 小时前
【RHCA+】bash命令
linux·开发语言·bash
weixin_307779136 小时前
Linux下Docker Compose里运行的MySQL数据库故障诊断Shell脚本
linux·运维·mysql·docker·自动化
小生不才yz6 小时前
Shell脚本精读 · S14-02 | 脚本模板:从 20 行工具到可维护项目
linux
x-cmd6 小时前
Linus 9 年前说「模糊测试有效」——今天已成 OSS-Fuzz 时代铁律
linux·ai·rust·开源·自动化·agent·安全性测试