微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法使用MSMPI和GCC编译程序

如何解决无法使用MSMPI和GCC编译程序

我正在尝试使用gcc在C语言中编译MSMPI程序。

这就是我要包含在代码中的内容

#define MSMPI_NO_SAL

#include "mpi.h"
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

我正在使用Vscode执行以下任务:

{
  "version": "2.0.0","tasks": [{
    "type": "shell","label": "C/C++: gcc.exe build active file","command": "C:\\MinGW\\bin\\gcc.exe","args": ["-g","${file}","-I","C:\\Program Files (x86)\\Microsoft SDKs\\MPI\\Lib\\x64","C:\\Program Files (x86)\\Microsoft SDKs\\MPI\\Include","-o","${fileDirname}\\${fileBasenameNoExtension}.exe"],"options": {
      "cwd": "${workspaceFolder}"
    },"problemmatcher": ["$gcc"],"group": {
      "kind": "build","isDefault": true
    }
  }]
}

但是,在尝试编译时,我的代码收到以下错误

In file included from d:\Documents\1.Ecole\University\Undergrad\Fall 2020\COMP 428\ass1\pi_est_parallel.c:5:
C:\Program Files (x86)\Microsoft SDKs\MPI\Include/mpi.h:4617:5: error: unkNown type name '_Out_writes_'; did you mean '_mpi_writes_'?
 4617 |     _Out_writes_(maxprocs) int array_of_errcodes[]
      |     ^~~~~~~~~~~~
      |     _mpi_writes_
C:\Program Files (x86)\Microsoft SDKs\MPI\Include/mpi.h:4629:5: error: unkNown type name '_Out_writes_'; did you mean '_mpi_writes_'?
 4629 |     _Out_writes_(maxprocs) int array_of_errcodes[]
      |     ^~~~~~~~~~~~
      |     _mpi_writes_
The terminal process "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -Command C:\MinGW\bin\gcc.exe -g 'd:\Documents\1.Ecole\University\Undergrad\Fall 2020\COMP 428\ass1\pi_est_parallel.c' -I 'C:\Program Files (x86)\Microsoft SDKs\MPI\Lib\x64' -I 'C:\Program Files (x86)\Microsoft SDKs\MPI\Include' -o 'd:\Documents\1.Ecole\University\Undergrad\Fall 2020\COMP 428\ass1\pi_est_parallel.exe'" terminated with exit code: 1.
Terminal will be reused by tasks,press any key to close it.

我忘了在编译时包含一些内容吗?

解决方法

这是Microsoft <select id="test_1"> <option value="0.1">dolor</option> <option value="a">sit</option> <option value="-1">Lorem</option> <option value="0">ipsum</option> <option value="A">amet</option> </select> <ul id="test_2"> <li>z</li> <li>-20</li> <li>ab</li> <li>100</li> <li>1</li> <li>00</li> <li>10</li> <li>Ab</li> <li>0.1</li> </ul> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>头文件中的一个已知问题:

该问题引用了simple patch adding _Out_writes_来解决此问题。您可以通过添加

在自己的代码中进行镜像
mpi.h

在添加#define _Out_writes_(x) 之前,如果您不能升级到最新版本。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?