Debian上Fortran项目怎么构建
导读:在 Debian 上构建 Fortran 项目的实用指南 一 准备环境 安装编译器与基础工具: 更新索引并安装 gfortran 与构建工具: sudo apt update sudo apt install gfortran bui...
在 Debian 上构建 Fortran 项目的实用指南
一 准备环境
- 安装编译器与基础工具:
- 更新索引并安装 gfortran 与构建工具:
- sudo apt update
- sudo apt install gfortran build-essential cmake meson ninja-build
- 更新索引并安装 gfortran 与构建工具:
- 验证安装:
- gfortran --version
- 若命令未找到,说明未安装或不在 PATH,请先完成上一步安装。
二 快速开始 单文件与多文件
- 单文件编译运行:
- gfortran hello.f90 -o hello
- ./hello
- 多文件与模块的正确顺序(要点:先编译被 USE 的模块,再链接主程序):
- 示例结构:
- square.f90(模块 square)
- cube.f90(模块 cube)
- tabulate.f90(主程序,use square, cube)
- 编译与链接:
- gfortran -c square.f90 -o square.o
- gfortran -c cube.f90 -o cube.o
- gfortran -c tabulate.f90 -o tabulate.o
- gfortran square.o cube.o tabulate.o -o tabulate
- 说明:模块会生成 .mod 文件,主程序编译时必须能找到这些模块;链接阶段再把所有 .o 文件合并为可执行文件。
- 示例结构:
三 使用 Meson 构建系统
- 安装与初始化:
- sudo apt install meson ninja-build
- meson setup builddir & & cd builddir
- meson compile
- 示例 meson.build(支持多源、自动处理模块依赖):
- project(‘myproj’, ‘fortran’, version: ‘0.1’)
- src = [‘square.f90’, ‘cube.f90’, ‘tabulate.f90’]
- executable(‘tabulate’, src, install: true)
- 常用命令:
- meson compile -C builddir
- meson install(可选,安装到系统目录)
- 说明:Meson 对 Fortran/C/C++ 混合项目支持良好,使用 Ninja 作为后端,配置简洁、跨平台。
四 常用构建选项与调试优化
- 警告与调试:
- gfortran -Wall -Wextra -g -O2 hello.f90 -o hello
- 含义:开启常用警告、加入调试信息、使用二级优化(可按需调整为 -O0/-O3)。
- 库与头文件搜索路径:
- gfortran main.f90 -I/path/to/include -L/path/to/lib -lmylib
- 说明:-I 指定模块/头文件搜索路径,-L 指定库目录,-lmylib 链接名为 libmylib.so/libmylib.a 的库。
- 并行与混合语言提示:
- OpenMP:gfortran -fopenmp -O2 -g omp.f90 -o omp
- 与 C/C++ 混编:确保链接顺序正确,Fortran 运行时库在链接尾部;可用 iso_c_binding 进行接口对接。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian上Fortran项目怎么构建
本文地址: https://pptw.com/jishu/784789.html
