Windows下CodeBlocks配置 支持C++11 多线程 std::thread
2016-06-24 15:22
393 查看
失败的几种姿势
之前看了几篇文章/article/10560363.html
这篇博客是让在SourceForge上下载32位或64位的MinGW-builds v4.8.0:下载链接分别是:
(1)http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/32-bit/threads-win32/sjlj/
(2)http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/64-bit/threads-win32/sjlj/
(多个rev压缩包,下载最新的那个就好。)
下载之后按照它的介绍配置,运行一个测试程序:
#include <iostream> #include <thread> using namespace std; void hello() { cout<<"hello kitty"<<endl; } int main() { std::thread t(hello); t.join(); return 0; }
会出现编译错误,显示thread未在当前域中声明,也就是这个版本的编译器不支持了。
后来我看了这一篇:
/article/1589681.html
这篇博客介绍,需要下载POSIX架构的MinGW-builds v4.8.0,下载链接是:
https://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/64-bit/threads-posix/sjlj/
下载、解压、配置、重启codeblocks,这个流程又重复一遍,编译依然出错,出现很多错误,基本上都是未定义的引用“xxxx”函数,所以windows不能用这个版本。
我试了MinGW-builds/ host-windows / releases / 4.8.1下的三个版本:
(1)https://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/64-bit/threads-win32/sjlj/
(2)https://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/64-bit/threads-posix/sjlj/
(3)https://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/32-bit/threads-win32/sjlj/
都不好使。
为什么? =。=
上面的博文都是2013、2014年左右的。在stackoverflow上看了相关问题也都是两年前的提问。
所以可能过去的方法已经不适用了。
最终解决:请下载codeblocks-16.01mingw
下载最新版本的带gcc编译器的CodeBlocks就成功了!!配置自带的编译器就可以。
CodeBlocks自带的都是TDM-GCC,没用过,但是已经支持std::thread了。
环境说明:
测试时间:2016年6月24日
操作系统:Windows 7 64bits OS
CodeBlocks版本:16.01
安装包:codeblocks-16.01mingw-setup.exe
下载链接:http://www.codeblocks.org/downloads/26
CodeBlocks配置:
Settings -》 Compiler
设置编译器位置:(注意每次更换编译器安装路径后,下面的程序文件路径都要重新选择一遍,默认还是在上一次配置的编译器的子目录,为确保准确,请从根目录重新选择。)
勾选c++支持:
对上面的程序进行测试:
相关文章推荐
- C语言笔记系列(四)--运算符和常用语法
- C++11 多线程
- 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc
- leetcode_c++:Game of Life(289)
- 关于VC++6.0中的字符串拼接函数strcat
- 鸡仔单片机成长记----------------按键检测
- OC和C++混编
- 五子棋游戏纯C语言
- vscode配置c++debug
- 浅析C语言中堆和栈的区别
- C语言之尾队列tailq
- C++11中的std::function
- 【WIN32】IntelliSense: "const char *" 类型的实参与 "LPCWSTR" 类型的形参不兼容
- std::set::lower_bound与std::lower_bound的效率问题
- 最全面的 C++ 资源、框架大全
- How to find size of array in C/C++ without using sizeof ?
- 第16周———用二进制文件处理学生成绩
- 【C/C++】深入预处理之line
- 处理C++源代码的程序
- 大一下学期C++总结