首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将Fortran exe与Fortran DLL链接?

如何将Fortran exe与Fortran DLL链接?
EN

Stack Overflow用户
提问于 2017-03-09 13:02:58
回答 1查看 893关注 0票数 0

我想将我的Fortran代码与这个Fortran创建的DLL链接起来。

用简单的方式..。

Fortran程序(可编辑代码)--链接-- Fortran DLL (不可编辑)(通过Fortran程序代码链接方法?)

我想要做一个程序,我不想显示我的代码(这部分将以DLL形式)。

例如:

我在intel fortran中有一个DLL代码,即

代码语言:javascript
运行
复制
SUBROUTINE TWICE(x,y)
IMPLICIT NONE
!DEC$ ATTRIBUTES DLLEXPORT::TWICE
REAL, INTENT(IN) :: x
REAL, INTENT(OUT) :: y
y=2*x
END SUBROUTINE TWICE

现在我想在另一个程序中使用这个DLL。新的程序是单独的程序,我想使用这个DLL在英特尔fortran下面写的。

代码语言:javascript
运行
复制
PROGRAM TestToCallDLL
IMPLICIT NONE
!DEC$ ATTRIBUTES DLLIMPORT::TWICE
REAL :: x,y

WRITE(*,*)'x?'
READ(*,*)x
CALL Twice(x,y)
WRITE(*,*)'x twice = ',y

END PROGRAM TestToCallDLL

错误是:

代码语言:javascript
运行
复制
Error   1    error LNK2019: unresolved external symbol __imp__TWICE referenced in function _MAIN__  twiceTEST.obj   
Error   2    fatal error LNK1120: 1 unresolved externals    Debug\twiceTEST.exe 
EN

回答 1

Stack Overflow用户

发布于 2017-03-13 07:18:19

编译器在创建.LIB时生成的.DLL文件必须在链接期间使用。将其作为依赖项添加。您还可以将其复制到新的项目目录中。

有关更多信息,请参见论坛中的使用Visual 2008从C++调用Fortran

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42696140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档