为什么.mod文件在每次编译.f文件后都不同

时间:2013-12-06 10:07:15

标签: compiler-construction module fortran intel-fortran

我有一个fortran文件说abc.f。

这个abc.f里面有一些代码,并定义了一个模块说abcd。

当我使用ifort编译器编译文件时,它会创建abcd.mod和abc.o。

我将这些.o和.mod文件保存在另一个位置并重新编译abc.f。

现在,当我将新的abcd.mod与旧的abcd.mod进行比较时,它有所不同,但.o文件是相同的。

可能的原因是什么?

3 个答案:

答案 0 :(得分:2)

可能是时间戳。尝试在strings上运行.mod并进行检查 - 通常是前几行。

答案 1 :(得分:2)

它是一个包含在mod文件中的时间戳。 http://en.wikipedia.org/wiki/Timestamp您可以在时间戳上更多地提及此内容

答案 2 :(得分:1)

感谢您的所有答案。 它只是一个时间戳,它正在发挥作用。 时间戳在.mod文件中以49到52或49到56个字节(取决于体系结构)存储。 您可以使用dd命令提取剩余内容以进行比较。