使用IFORT并使用在Microsoft Visual Studio中编译的目标文件(即.lib)编译Fortran程序

时间:2018-10-02 13:22:23

标签: c visual-studio fortran intel-fortran

我有一个基本问题,即使多次搜索网络,我也找不到答案。

是否可以通过IFORT来编译Fortran程序,该程序使用(作为依赖项)由Microsoft Visual Studio C编译的目标文件(即.lib)?

1 个答案:

答案 0 :(得分:1)

是的,有可能,甚至很容易。您可以选择几种方法来做到这一点:

  • 将MSVC库项目添加到您的Fortran Visual Studio解决方案中,然后使用“项目”>“依赖项”将C项目添加为您的Fortran项目的依赖项*如果C项目创建了DLL,则不起作用
  • 将.lib从C项目添加到Fortran项目,就好像它是源文件一样
  • 在“链接器”>“输入”>“其他依赖项”项目属性中命名C.lib。

我通常建议首选,因为这意味着您不必为“调试”和“发布”项目设置不同的设置。您确实需要确保C库是为指定与Fortran项目相同的运行时库类型(调试与非调试,DLL与静态)而构建的。这是C的“代码生成”属性页。

Intel Parallel Studio XE for Windows Sample Bundle中有一个有效的示例“ Fortran Calls C”。

您还需要了解如何从Fortran调用C过程,并确保C参数具有兼容的Fortran类型。如果您使用Fortran标准的“ C互操作性”功能,则效果最佳。