pthreads-w32-2-9-1-release链接:
链接:https://pan.baidu.com/s/13vuaxDpZMIGSgdkm79BcXw
提取码:lx8b
方法一
首先搜索pthread功能包,如图所示
然后在“浏览框”中搜索“pthread”,点击安装即可。
注意:在引用#include<pthread.h>运行程序时,会反馈 error C2011: “timespec”:“struct”类型重定义 的错误,这是只需在pthread.h中的
#if !defined( PTHREAD_H )
#define PTHREAD_H
下面加上
#define HAVE_STRUCT_TIMESPEC
方法二
1.下载所给链接文件
2.解压后得到 Pre-built.2文件
3.配置头文件:把include文件夹下的头文件拷贝到VS安装目录下
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.11.25503\include
(我的默认安装,所以在C盘)
4.配置静态链接库:把lib文件夹下的静态库文件拷贝到vs2017安装目录下
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.11.25503\lib
5.配置动态链接库
Pre-built.2\dll\x86下的文件拷贝到C:\Windows\SysWOW64目录下
Pre-built.2\dll\x64下的文件拷贝到C:\Windows\System32目录下
头文件中引用主要事项:
#include <pthread.h>
/*
必不可少,这是告诉编译器在编译形成的.obj文件和.exe文件中加一条信息,
使得链接器在链接库的时候要去找pthreadVC2.lib这个库,不要先去找别的库。
(.exe文件找DLL 也是这种写法,例如 pthreadVC2.dll)
*/
#pragma comment(lib,"pthreadVC2.lib")
报错:无法打开文 件XXX.lib
解决方法1:将xxx.lib和调用pragma comment的源文件放在一个目录(注意是调用它的源文件,不是头文件)。
解决方法2:也可以在xxx.lib前加上全路径名如:#pragma comment(lib, “c:\windows\system32\xxx.lib”)。
解决方法3:修改项目属性中,配置属性–》连接器–>常规–》附加库目录 中加上xxx.lib所在目录。
解决方法4:工具–》选项–》项目和解决方案–》vc++项目–》选择库文件, 在下面的目录中添加xxx.lib所在目录。