我正在尝试编译包含原子头的c ++文件,

我收到此错误:

#error <atomic> is not supported on this single threaded system


我正在使用交叉编译的铛。
我在redHat 6.9上运行

最佳答案

此错误意味着目标系统的libcxx已配置为没有线程支持。 libcxx outlines its threading support的文档。


  _LIBCPP_HAS_NO_THREADS
  
  在没有线程支持的情况下构建libc ++时定义了此宏。用户不应手动定义它。


您收到的错误意味着已定义_LIBCPP_HAS_NO_THREADS。具体来说,从atomic标头中:

#ifdef _LIBCPP_HAS_NO_THREADS
#error <atomic> is not supported on this single threaded system
#endif


您将需要了解是否可以使用libcxx文档中概述的线程支持为目标平台构建/配置libcxx。

关于c++ - 如何使用原子 header C++,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48324492/

10-10 18:44