我目前正在为VS 2017中的Linux开发一个多线程应用程序。
作为远程Linux机器,我在Windows中使用内置的Ubuntu bash,这是周年纪念更新的一部分。
编译进行得很好,构建是成功的。但就在运行程序之后,发生了以下错误。
terminate called after throwing an instance of 'std::system_error'
what(): Enable multithreading to use std::thread: Operation not permitted我试图摆弄链接和编译设置。但我刚刚搞砸了整个项目。
有没有人遇到并解决过这样的问题?谢谢。
编辑:此线程被标记为重复。让我解释一下为什么我认为这是不同的。我正在用VS2017在Windows host上进行开发,并试图在VS2017中实现工作调试。我不能像在建议的复制线程中那样直接编辑编译例程命令。
发布于 2019-08-08 04:42:59
我知道@Andrey Turkin已经在评论中给出了答案。我想在这里添加它作为答案,因为不是所有人都会阅读评论。我已经搜索了两天了,@Andrey Turkin帮我解决了这个问题。请遵循他的评论来清除此问题。
假设平台工具集是"Remote_GCC_1_0";您需要做的就是添加"-pthread“来编译和链接命令行。VS配置将大多数g++选项映射到特定的配置值,但不是这个配置值。转到项目的配置,"C/C++ -> All Options",将"-pthread“添加到"Additional Options”配置值。转到"Linker -> All Options“并执行相同的操作。
https://stackoverflow.com/questions/43378910
复制相似问题