2013-10-22 14 views
0

我想用MinGW编写一个用Fortran编写的,带有.dll的程序。在Fortran代码中有以下行:Mingw - kernel32.mod - 没有这样的文件或目录

USE kernel32 

当我尝试编译它时,它总是说kernel32.mod无法打开。没有这样的文件和目录。我不知道该怎么做。是否只有一些编译器选项丢失或者是不可能使用MinGW进行编译?

(Windows 7中的MinGW 3.20)

+0

我的猜测是你忘了设置'include'目录('-I/path/to/module/files')! –

+0

在整个MinGW目录中没有kernel32.mod。只有一个libkernel32.a。 – user2504694

+0

然后,您可能需要找到/下载'kernel32.f90'并编译它以使您的代码正常工作。 –

回答

0

这可能是由英特尔(和祖先)家族提供对应KERNEL32.LIB导入库(用于KERNEL32事情的Fortran定义Fortran编译器的模块。 DLL Windows系统动态链接库)和Windows.h头文件的相应部分。

您可能能够识别代码正在使用的模块中的内容,并提供您自己的定义。对于过程和类型,这几乎肯定会要求使用编译器扩展来指定诸如调用约定和对齐方式,这与Windows系统DLL使用的约定和对齐一致。这种约定在32位和64位Windows平台之间有所不同。

相关问题