英特尔Fortran破坏了DLL

时间:2015-10-15 11:47:41

标签: dll fortran intel

我正在通过VS 2015与英特尔Fortran构建一个dll。输出是一个带有一个子程序的dll文件(我确信它是导出的,因为我用依赖工具检查了dll)。但是当我尝试在C priject中使用时,VC ++说它无法读取DLL并且文件已损坏(错误LINK1107)。

fortran-side代码是

subroutine ADD(x,y,z)
    !DEC$ ATTRIBUTES DLLEXPORT, DECORATE, ALIAS : 'ADD' :: ADD
    !DEC$ ATTRIBUTES REFERENCE :: x
    !DEC$ ATTRIBUTES REFERENCE :: y
    !DEC$ ATTRIBUTES REFERENCE :: z

    integer x, y, z

    z = x + y
end subroutine

1 个答案:

答案 0 :(得分:1)

不要在C项目中使用.dll文件 - 而是使用在构建dll时生成的导入库(.lib)。