在 Ubuntu 上运行 Fortran 程序出错,通常可以从环境、编译、代码、运行时几个方面排查。下面给你一个比较系统的“排错指南”。
Ubuntu 默认通常没有装 gfortran。
gfortran --version
如果提示 command not found,就安装:
sudo apt update
sudo apt install gfortran
一般写法:
gfortran hello.f90 -o hello
常见错误:
.f / .f90 / .f95)多文件示例:
gfortran main.f90 sub.f90 -o main
编译器会给出行号,例如:
Error: Syntax error in WRITE statement at (1)
✅ 做法:
end / end programdo 没 end doimplicit none 时)如果用了:
implicit none
那所有变量都必须声明,否则:
Error: 'x' has not been declared
例如用 BLAS / LAPACK:
gfortran main.f90 -llapack -lblas -o main
如果报错:
cannot find -llapack
安装:
sudo apt install liblapack-dev libblas-dev
gfortran main.f90 -lm
常见原因:
recursive示例:
real :: a(10)
a(20) = 1.0 ! 越界
✅ 建议编译时加调试选项:
gfortran -g -fcheck=all -Wall hello.f90 -o hello
运行时会直接告诉你哪里越界。
gfortran -ffpe-trap=zero,overflow,invalid
./hello
如果提示:
Permission denied
chmod +x hello
gfortranimplicit none-g -fcheck=all 调试如果你愿意,可以直接把:
贴出来,我可以精确帮你定位问题。