linux使⽤C++11thread的问题
1、执⾏Makefile⽂件出现makefile 出现“‘程序名’is up to date”的提⽰?
解决⽅案:这表⽰makefile的target和当前⽬录下的某个⽬录名字冲突了(重名了),需要借助.PHONY。例⼦:
Makefile
all:
gcc a.c -o a.out
⽽当前⽬录下有⼀个⽂件夹的名字也是all,make的时候就会出现“is up to date”的提⽰。
改为:
.PHONY:all
all:
makefile phonygcc a.c -o a.out
就ok了。
2、运⾏多线程程序时出现如下错误:terminate called after throwing an instance of 'std::system_error'
what(): Enable multithreading to use std::thread: Operation not permitted
Aborted (core dumped)
解决⽅法:在编译C++11 多线程程序时,要加上-lpthread或-pthread
例⼦:
Makefile
.PHONY:ThreadTest
ThreadTest : ThreadTest.cpp
g++ -std=c++11 -o ThreadTest -pthread ThreadTest.cpp
clean :
rm *.o
3、
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论