温馨提示×

ubuntu怎样调试fortran

小樊
36
2026-10-10 02:55:52
栏目: 智能运维

在 Ubuntu 上调试 Fortran 程序,通常分为编译、运行、调试三个环节。下面给你一套常用且实用的做法。


一、安装 Fortran 编译器

Ubuntu 默认一般没有 Fortran 编译器,先安装 gfortran:

sudo apt update
sudo apt install gfortran

验证:

gfortran --version

二、编译 Fortran 程序(重点)

假设你有 test.f90:

program test
  implicit none
  integer :: i, sum
  sum = 0
  do i = 1, 10
     sum = sum + i
  end do
  print *, sum
end program test

1. 普通编译

gfortran test.f90 -o test
./test

2. 调试编译(非常重要)

要调试,必须加 -g:

gfortran -g -O0 test.f90 -o test

说明:

  • -g:生成调试信息
  • -O0:关闭优化(否则变量可能被优化掉,调试看不了)

三、使用 GDB 调试 Fortran

1. 安装 GDB

sudo apt install gdb

2. 启动调试

gdb ./test

常用 GDB 命令(Fortran 友好):

命令 作用
break test.f90:6 在第 6 行设断点
run 运行程序
next 单步(不进入函数)
step 单步(进入函数)
print sum 打印变量
info locals 查看当前作用域变量
continue 继续执行
quit 退出

示例:

break test.f90:6
run
print i
next
print sum

四、常见调试技巧

1. 数组越界检查(非常推荐)

gfortran -g -O0 -fcheck=all test.f90 -o test

运行时会自动报错数组越界、未初始化等问题。

2. 使用 print 调试(最朴素但有效)

print *, 'i =', i

3. 使用 gfortran 警告

gfortran -Wall -Wextra -g test.f90 -o test

五、进阶工具(可选)

1. VS Code + Fortran 插件

  • 安装 Fortran INTELLSENSE
  • 配置 launch.json 使用 gdb
  • 图形化断点调试,很方便

2. Valgrind(内存错误)

sudo apt install valgrind
valgrind ./test

六、最小调试示例总结

sudo apt install gfortran gdb
gfortran -g -O0 -fcheck=all test.f90 -o test
gdb ./test

如果你愿意,可以告诉我:

  • 你用的是 .f 还是 .f90
  • 是数值计算 / 科学计算 / 老代码
  • 是否用 Makefile 或 CMake

我可以给你更具体的调试方案。

0 踩