原文地址:http://blog.csdn.net/zhangyulin54321/article/details/8166299
比如:
如何在VC6.0下用pthread.h这个头文件
1.下载PTHREAD的WINDOWS开发包 pthreads-w32-2-4-0-release.exe(任何一个版本均可)http://sourceware.org/pthreads-win32/,解压到一个目录。
2.找到include和lib文件夹,下面分别把它们添加到VC++6.0的头文件路径和静态链接库路径下面:
a).Tools->Options,选择Directory页面,然后在Show directories for:中选择Include files(默认),
在Directories中添加include的路径。在Show directories for:中选择Library files,
在Directories中添加lib的路径。
b).Project->Settings,选择Link页面,然后将lib下的*.lib文件添加到Object/library Modules,
各lib文件以空格隔开。 比如:我的 pthreads-w32-2-4-0-release.exe中lib文件夹中
c).将lib下的*.dll文件复制到工程目录下,即根目录。
其实简单的测试就只需要pthreadVC.lib和pthreadVC2.dll.
如果想要所有的项目都能使用pthread,就要将相应的lib,dll和.h文件拷贝到vc++6.0系统路径对应的文件夹
如果不配置环境,将出现以下错误:
Linking...
工程名.obj : error LNK2001: unresolved external symbol __imp__pthread_join
工程名.obj : error LNK2001: unresolved external symbol __imp__pthread_create
Debug/工程名.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.
在vs下也是相似的,vs2003,vs2005,vs2008中 工具-》选项-》项目(或解决方案)->vc++directorys
但是vs2010中是作为用户属性表提供,怎样设置呢?这样在用户属性表中设置的好处,就是为所有项目提供
vs2010中:视图->属性页->配置属性->vc++目录,现在就差不多了
如果在引用外部类库中出现了:
就是没有在linker中添加pthreadVC2.lib,这样添加呢?
选中项目,视图-》属性页-》连接器-》输入-》附加依赖项中添加pthreadVC2.lib,要带完整路径,如果不带,就要顺便把它拷贝到VS系统安装目录的VC/lib目录中