错误LNK2019:未解析的外部符号__imp__pthread_create

时间:2014-02-04 17:02:41

标签: visual-studio pthreads google-nativeclient ppapi

我开始研究端口并获得了大量的代码库,可以使用VS集成进行编译。我想用胡椒api完成一切并运行所以我可以调试VS调试器的任何问题。 现在我偶然发现了pthread库中的一些链接器错误。我可以在“hello_world_gles”示例中重现它。我只是使用pthread_create创建一个新线程,我得到以下链接器错误:

error LNK2019: unresolved external symbol __imp__pthread_create

如果我选择NaCl32作为目标平台,一切正常。我已将“pthread.lib”文件添加到ppapi配置的其他依赖项中。我还需要其他任何东西吗?

顺便说一句,在从VS启动时调试器始终附加到错误进程的问题是否有任何进展?

1 个答案:

答案 0 :(得分:0)

我们为PPAPI配置包含的pthread库实际上是pthreads-win32(http://www.sourceware.org/pthreads-win32/),可以在pepper_XX \ lib \ win_x86_32_host \ Debug \ pthread.lib中找到。我通过在“pthread.h”包括之前定义PTW32_STATIC_LIB来实现它。

我刚刚使用带有pepper_31库的Chrome 33上的VS加载项进行了测试,并且能够通过一些手动修复使其工作。但是,我没有对链接pthread.lib进行任何更改。如果系统环境变量中有NACL_SDK_ROOT,则加载项应自动为您添加正确的include和library目录。

确保您运行的是最新版本:

  

naclsdk list -r   捆绑:    我:安装好了    *:可用更新

...   我vs_addin(开发)(r1568) ...

如果您的版本较旧,可以通过运行:

进行更新
  

naclsdk update --force vs_addin   cd vs_addin   安装