gfortran中的f77代码 - 库调用

时间:2013-03-27 16:14:11

标签: libraries gfortran g77

我从以前的研究员那里继承了一个旧的f77 / g77程序,但是Fortran经验很少。我已经完成了文件中的大部分语法转换,但是我遇到了一个问题,即旧文件调用一个(不推荐的?)库,称为libstr。我似乎无法在任何当前的gfortran文档中找到对此的引用(尽管我不确定我是否正在寻找合适的位置)。我想知道的是,是否有办法避免调用Unionflostr函数,而只是直接在文件中输出值。

代码的相关部分在这里:

if (mod(ntime,nout) .eq. 0) then

ndec = 1
call flostr(t,str1,ndec)
call Union('signal_t=',str1,str2)
call Union('lineshapeSPConD_t=',str1,str3)
open(7,file = str3,STATUS ='unknown')   

我想要么弄清楚如何安装库(我尝试运行makefile,gfortran在其搜索路径中查看/ usr / bin),或者能够替换这些函数将解决问题。我在OS X 10.8.3上使用从Homebrew安装的gfortran 4.8。

谢谢!

更新:

我成功地通过在gfortran编译中包含库来编译代码,但是现在运行输出程序会导致一串错误......

输出错误是:

Program received signal SIGFPE: Floating-point exception - erroneous 
arithmetic operation.

Backtrace for this error:
#0  0x1470e91c2
#1  0x1470e998e
#2  0x7fff92330949
#3  0x10421642e
#4  0x104217472
[1]    18171 floating point exception  ./Lineshape_thick_SP_New.x

回到绘图板。

0 个答案:

没有答案