std::thread 运行时错误“启用多线程以使用 std::thread:不允许操作”

std::thread 运行时错误“启用多线程以使用 std::thread:不允许操作”

我正在尝试将一个在设置的环境为 Ubuntu 12.0 QTCreator 版本 - 2.4.1 QT - 4.8.0 gcc - 4.6.3 时运行没有任何问题的程序移植到新环境中

Ubuntu 14.04 QTCreator 版本 - 3.0.1 QT - 5.2.1 gcc - 4.8

不幸的是,我最终看到一个运行时错误“在抛出‘std::system_error’实例后调用终止what():启用多线程以使用std::thread:不允许操作”

据我了解,这似乎是编译器兼容性的问题。要么是我在编译过程中错过了一些选项,要么是编译器出了问题。

如何修复?任何帮助都将不胜感激。

答案1

gcc 4.8 有与此相关的错误。您可以尝试错误报告中提到的解决方法:添加标志

-Wl,--no-as-needed

到汇编中。

相关内容