MSB6006:使用openMP时,使用代码2退出了“ CL.exe”

Duy*_*ong 2 c++ visual-studio

我尝试在Visual Studio中运行一些openMP示例,但是启用/ openMP时,程序无法运行,返回错误“ MSB6006:“ CL.exe”已退出,代码2”。这是示例:

int main(int argc, char* argv[]) { 
  #pragma omp parallel { 
     printf("Hello World... from thread = %d\n", omp_get_thread_num()); 
  } 
  return 0;
} 
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助。

Mor*_*ami 5

使用openMP时,不能使用“两阶段名称查找”选项。这在“输出”窗口中指示,您可以在其中看到以下消息:

1> c1xx:错误C2338:C ++ / CLI,C ++ / CX或OpenMP不支持两阶段名称查找;使用/ Zc:twoPhase-

要解决此问题,请转到“项目属性”->“ C / C ++”->“命令行” ,然后在底部的“其他选项”中添加 / Zc:twoPhase-,然后按确定。那解决了我的问题。 在此处输入图片说明