Fortran程序module使用问题

Fortran程序需要用到module,使用的是VS2008 + Intel Fortran组合。程序在这个组合下面能够完美运行,但是用ifort编译的时候就遇到各种错误,说什么: Error in opening the compiled module file. Check INCLUDE paths. [LO]
这里的LO是我的一个module。我个人猜测原因可能是module一开始就声明了一些变量之类的不适合ifort的机制,也不确定。!

就我个人经验而言,CVF和IVF、PGI 三者对FORTRAN代码的编译存在很大的不同:CVF编译代码时,对MODULE的位置、其中变量的位置没有什么特别的限制;但在IVF和PGI 等很多种编译器中,对MODULE的编译的规则跟CVF相比是不同的,具体的说就是在IVF和PGI 等编译器中,第一应当先编译MODULE(比如说代码文件有两个,一个全是module,一个是主程序,编译的顺序是把module放在前边,如果代码文件中有子程序也有module,则应当把module写在文件最开始),第二在MODULE中,应当按照使用顺序确定定义变量的顺序,先用的先定义,后用的都定义(注意在定义一行的变量时则无所谓先后)。

你可能感兴趣的:(FORTRAN)