使用 MS Visual Studio Code,我如何访问 Fortran 代码中的 MPI 库?

问题描述 投票:0回答:0

我正在 Windows 11 上使用 MS Visual Studio Code 在 Fortran 中编码和运行物理模拟,我想使用 MPI。我已经安装了 Microsoft MPI (MSMPI),并且知道它已正确安装。当我在 Windows powershell 中输入“set msmpi”时,我看到了我想要看到的所有目录和位置:

MSMPI_BENCHMARKS=C:\Program Files\Microsoft MPI\Benchmarks\
MSMPI_BIN=C:\Program Files\Microsoft MPI\Bin\
MSMPI_INC=C:\Program Files (x86)\Microsoft SDKs\MPI\Include\
MSMPI_LIB32=C:\Program Files (x86)\Microsoft SDKs\MPI\Lib\x86\
MSMPI_LIB64=C:\Program Files (x86)\Microsoft SDKs\MPI\Lib\x64\

程序本身有如下形式(我省略了与MPI问题无关的部分):

    PROGRAM xyz

    USE MPI

    ...irrelevant...

    INCLUDE 'mpif.h'

     ...irrelevant...

    CALL MPI_INIT(ierr)
    CALL MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr)
    CALL MPI_COMM_SIZE(MPI_COMM_WORLD, size, ierr)

    CALL MPI_REDUCE(var1, var2, 1, MPI_DOUBLE_PRECISION, MPI_SUM, 0, MPI_COMM_WORLD, ierr)

    ...irrelevant...

    CALL MPI_FINALIZE(ierr)

    END PROGRAM xyz

当我尝试运行代码时,我收到一条错误消息:

错误:无法打开包含文件“mpif.h”`

我看过几个关于如何让 VS Code 访问 MPI 库的 Youtube 视频,但我只能零碎地收集信息,因为其中一些信息来源较旧,即 VS Code 不再包含设置以及视频中显示的选项。到目前为止,我只能收集到我必须在 settings.JSON 文件中输入条目。目前,这就是我所拥有的:

    {
        "workbench.colorTheme": "Visual Studio Dark",
        "explorer.confirmDelete": false,
        "code-runner.runInTerminal": true,
        "fortran.preferredCase": "uppercase",
        "fortran.linter.compiler": "gfortran",
        "editor.renderWhitespace": "none",
        "editor.accessibilitySupport": "off",
        "editor.tabSize": 6,
        "C_Cpp.default.includePath": [
            "C :\\Program Files\\Microsoft MPI\\MPI\\Include",
            "${workspaceFolder}/**",   
        ],

        "fortran.linter.includePaths": [
            "C:\\Program Files (x86)\\Microsoft SDKs\\MPI\\Include",
            "${workspaceFolder}/**",
        
        ],
        "fortran.fortls.preprocessor.directories": [
      
        ],
        "jake.autoDetect": "on",
        "grunt.autoDetect": "on",
        "gulp.autoDetect": "on",
        "json.schemas": [
    
        ]
        }

我不确定从现在开始我必须做什么。这是我的 settings.JSON 文件的样子吗?

我运行代码时不断收到找不到头文件的错误信息。如果我忽略了对更有经验的程序员来说显而易见的事情,我提前道歉。我是一名年轻的学生,对编程还很陌生,这是我第一次不得不在手动访问库时编写代码。任何帮助都将不胜感激。

visual-studio-code fortran include mpi include-path
© www.soinside.com 2019 - 2024. All rights reserved.