2013-10-22 32 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平臺之間有所不同。

相關問題