且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Fortran编译错误 - 未定义的引用

更新时间:2022-10-15 15:46:26

If the definition of subroutine read_step is in a module, then you have either forgotten to add the USE statement for that module to the top of the main program, or the relevant procedures in the module are not PUBLIC.

With that compiler (and some others) linker names for module procedures generally consist of the module name followed by 'mp' (case may vary) followed by the procedure name, with various amounts of leading and trailing underscores salted to taste. Your linker error doesn't have any of that "mangling", which indicates that when compiling the scope with the procedure reference, the compiler doesn't think the procedure is a module procedure.