用 Fortran 编写的项目可以在不同的机器上正常运行,但在其他一些 Linux 机器上却不能。其中一个上写着segmentation fault
,另一个上写着segmentation fault (core dumped)
。我gdb
对我的程序做了,令人惊讶的是,它将段错误指向程序的第一行,它应该打印保存在模块中的变量的值。
我将它们全部编译如下:
gfortran -mcmodel=large -fPIC -fopenmp -lgfortran ...
你知道为什么会这样吗?Ubuntu 12.10 上的 gfortran 版本是 4.7.2。