Fortran Coder

标题: 求助:关于fortrain的运行问题(imsl库的加载和调用) [打印本页]

作者: whqs    时间: 2014-6-9 23:42
标题: 求助:关于fortrain的运行问题(imsl库的加载和调用)
这段时间导师,让我研究一下这个fortrain程序,作为环境工程专业的我临危受命,顿时懵了。。上网查了查,下载了powerststion4.0, VS2010+2011xe等“万能版本”,最后还是无法运行。不知是编译器的问题,还是源代码(见附件)的问题?错误如下:
错误1 error #7002: Error in opening the compiled module file. Check INCLUDE paths. [IVPAG_INT]C:\Documents and Settings\admin\\FORtrain\\\adoxtis.f
错误2 error #7002: Error in opening the compiled module file. Check INCLUDE paths. [UMACH_INT]C:\Documents and Settings\admin\\FORtrain\\\adoxtis.f
错误3Compilation Aborted (code 1)C:\Documents and Settings\admin\桌面\FORtrain\源代码\新建文件夹\adoxtis.f1




源代码.rar

19.03 KB, 下载次数: 1


作者: 楚香饭    时间: 2014-6-10 06:59
首先,PowerStation 是一个不稳定的编译器,且年代久远,请卸载它。

其次,你的代码使用了 IMSL 函数库,你需要安装并正确使用它。

关于 IMSL 的使用,不同的版本就不同。(这一点很苦恼)

你可参考本站的文章:http://www.fcode.cn/guide-58-1.html
大致有这么几个步骤:
1.安装IMSL
2.在VS里设置IMSL的include和lib路径。
3.在代码里 INCLUDE 'link_f90_static.h'   或 INCLUDE 'link_fnl_static.h'  (具体版本不同,原则是自己安装的版本的安装目录里能找到)
有时候这个 .h 文件是自由格式的,如果你在固定格式里 include 可能有问题。你可以把他的内容复制粘贴在 include 语句处,替换 include

IMSL 的使用,与代码无关,大多数是在配置。

最后,你的代码缺少两个函数:PEDERV 和 DIFFUN 这应该是需要你自己去书写的。
作者: whqs    时间: 2014-6-15 14:47
chuxf 发表于 2014-6-10 06:59
首先,PowerStation 是一个不稳定的编译器,且年代久远,请卸载它。

其次,你的代码使用了 IMSL 函数库, ...

谢谢!请问我的代码是如何运行的:  .f 文件放在 source .  
txt 文件放在 resource.  是这样吗, ?
作者: mangix2010    时间: 2014-6-15 22:27
.f放到source下,txt放到相应的工程文件夹下就行
作者: fcode    时间: 2014-6-15 22:33
source 是编译时使用,所以放入工程(参与编译链接)

txt 是输入文件,是运行时使用的,无需放入工程。
试想一下,你的程序编译后,你会发送给用户使用,假如你发给1000个用户。每个用户的输入文件都不同,甚至每次试算的数据都不同,怎么可能放在工程中呢?
好比,QQ会打开若干图片文件(表情之类的),但是腾讯书写QQ程序的时候,是不可能把几亿QQ用户的表情放在工程里的。





欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2