我尝试在Linux中使用OPENMP编译C/C++程序,出现以下错误消息

mrwjdhj3  于 2023-03-09  发布在  Linux
关注(0)|答案(1)|浏览(109)

错误消息为:错误:“threadprivate”“ramseries::ErrorWriter::activated_”指令不在“ramseries::ErrorWriter”定义中
我可以在windows中编译程序,但不能在linux中编译
在linux中使用threadprivate是不是不可能?
这是使用threadprivate的行:

编译指示操作线程私有(错误并行::分支ID_,tdyn::错误编写器::激活_,内存序列::错误编写器::激活_)

f45qwnt8

f45qwnt81#

我尝试在类定义中使用'threadprivate'指令。我想使用'threadprivate'的变量是类的静态成员。
例如,

struct ErrorParallel {
  
  static int id_branch_;
  #pragma omp threadprivate(id_branch_)

};

在linux版本中,现在我可以编译,但不能在windows中,所以我已经使用指令在两个SO中编译。
我想我使用的是不同版本的openmp

相关问题