只是要清楚 - 我已经在网上搜索的深度和背的信息,如何做到这一点如何为Visual Studio 2005安装pthread_win32(Windows pthread/posix线程库)?
我在寻找帮助建立pthread_Win32与Visual Studio 2005的工作,我的编程在C中,我有一些使用pthread.h编写的多线程任务。但是,由于pthread是unix的本地特性,因此我必须编写所有代码,然后将其写入到我的班级远程unix系统中以运行它。它使得开发需要更长的时间,而且效率非常低。我非常喜欢(比什么都重要)能够在我的win32机器上工作,所以我可以在Visual Studio中开发,就像我已经做了相当长的一段时间。
我已经将pthread.lib文件和pthread.h文件安装到相应的lib /头文件目录中,其中所有其他文件都位于其中。另一方面(实际库)的DLL,我放在c:\ windows \ system32中。我试图添加DLL作为依赖项(右键单击项目 - >引用 - >添加新引用),但正如其他人所说,我得到的只是一个空白的对话框,没有选择添加任何DLL文件或任何东西。这似乎认识到了头文件,但是当我编译我得到这些错误:
1>链接...
1> main.obj:错误LNK2019:解析外部符号_ 小鬼 _pthread_join中引用函数_main
1> main.obj:错误LNK2019:解析外部符号_ imp的 _pthread_create在函数引用_main
1> main.obj:错误LNK2019:解析外部符号_ 小鬼 _pthread_exit在函数引用_fcount
从我的研究,我确定这是与DLL中的一个问题,我假设它无法找到的,我在我的代码中引用的函数的定义。我搜索了高和低,我似乎无法找出任何方法来克服这个问题。我已经将lib /头文件的目录添加到了我的链接器中,以防万一,但这并没有解决问题。我需要在visual studio中做一些事情来指定我需要将pthreadVC2.dll作为项目依赖项 - 并且在这一点上似乎不可能(并且非常令人沮丧)。
任何智慧的话?
非常感谢您
通常__imp_thread_join东西意味着它认为它是C++,但公司的C ...也许尝试在包含内添加一个外部C {}块。 – rogerdpack 2012-09-24 20:20:57