使用g ++编译OpenMP时的未知编译指示

时间:2014-04-16 11:35:55

标签: c++ g++ openmp

我正在处理包含openmp pragmas的C ++代码。在尝试使用g++进行编译时,我收到以下错误消息:

ignoring #pragma omp parallel [-Werror=unknown-pragmas]

我理解错误是因为在makefile中没有使用fopenmp标志。我已尝试将fopenmp标记包含在CXXFLAGS中。但它仍然没有用。

有人会想到解决这个问题的解决方案吗?

注意:这个问题看起来像是关于同一错误的类似问题的重复问题而且我已经完成并尝试过了。因此,我会要求这个问题不要被标记为重复问题。

1 个答案:

答案 0 :(得分:4)

如果编译的OpenMP代码没有-fopenmp标志,则会出现此警告。 g++手册页告诉我们-fopenmp做了什么:

  

启用OpenMP指令的处理" #pragma omp"在C / C ++和      "!$ OMP"在Fortran。指定-fopenmp时,编译器      根据OpenMP应用程序生成并行代码      接口v3.0 http://www.openmp.org/。这个选项意味着      -pthread,因此仅在具有支持的目标上受支持      for -pthread