我的代码在没有#openmp的情况下运行良好 但是当我添加#openmp编译器
时,我收到了这个错误1> c:\ users \ hdd amd ali \ documents \ v studio 10 projects \ visual studio 2010 \ projects \ escaledesvols2 - copy \ escaledesvols2 \ djikstra.cpp(116):致命错误C1001:发生内部错误编译器。 1 GT; (编译文件'f:\ dd \ vctools \ compiler \ utc \ src \ p2 \ wvm \ mdmiscw.c',ligne 1098)
请注意: 我使用了许多不同的库(如#boost)
#include <string>
#include <iostream>
#include <stdio.h>
#include <ctime>
#include <iomanip>
#include <sstream>
#include <msclr\marshal_cppstd.h> // for unmanaged piece of code
#include <vcclr.h>
答案 0 :(得分:2)
我最近遇到过这个问题;我正在使用visual studio 2015进行编译。我使用visual studio 2017尝试了它,但我仍然遇到了内部编译器错误。然后我尝试使用visual studio 2013,它告诉我,我无法回复&#34; openMP部分中的语句。当我从VS 2013和VS 2105中删除返回时,编译器能够成功编译。因此,使用VS 2013进行尝试是有意义的,它会为您提供更好的错误描述。您也可能在openMP部分中有返回语句,这可能是c1001错误的原因。
答案 1 :(得分:1)
在我的例子中,它是OpenMP循环的返回函数。删除“返回”行解决了问题。
答案 2 :(得分:0)
你应该简单地举报。
就解决方法而言,它可能与内存/资源消耗有关。降低消费的常用技巧
可选地