我正在使用旧的 g77 编译器 (http://people.tamu.edu/~matthewmccleskey/g77.html),但似乎无法找出如何在我的代码中使用外部 DLL。甚至有可能,还是我必须获得更新的编译器?
我有 DLL 和 LIB 文件。该函数名为 GetDBI (_GetDBI@32)。
甚至可以在 fortran 77 中使用 DLL 吗?
您似乎使用的是 Windows,其中一个问题是有过多的 ABI 可供选择。AFAIK g77 仅支持随附的 gcc 支持的默认值(cdecl?)。Windows 上的 DLL 中的常见(静态)数据也存在一些问题,AFAIK。
g77 的继任者 gfortran 对不同的调用约定以及 DLL 中的公共变量和模块变量的处理提供了一些支持,请参见http://gcc.gnu.org/onlinedocs/gfortran/GNU-Fortran-Compiler-Directives.html