1

我想将 pthread lib 与我的应用程序静态链接,以便在没有安装 pthread lib 的其他目标上运行我的 .exe。

为此,我在 Linker->input->additional dependency of Visual Studio 中添加了 pthreadVC.lib,并为 lib 提供了正确的路径。

#define PTW32_STATIC_LIB我之前也在我的 thread.h 文件中添加了这段代码#include <pthread.h>

我的应用程序构建成功并在同一台机器上运行。但我试图在其他目标上运行时出现错误pthreadVC.dll is missing

请告诉我我在哪里失踪。

4

1 回答 1

1

在我的情况下,我没有静态库,我试图与动态库进行静态链接。以下是进行静态链接的步骤。

  1. 下载Pthread_Win32的源代码并使用 Visual Studio 构建它。
  2. 所以现在你可能在路径中拥有静态库(pthread_lib.lib)......\pthread-win32-master\pthread-win32-master\bin\Win32_MSVC2013.Release
  3. 在您的应用程序中,主要进入项目属性 Linker->input->additional dependency并添加pthread_lib.lib.
  4. 还将路径添加pthread_lib.lib到 Visual Studio 属性Linker->General->Additional Library Directories中。
  5. 将此代码添加#define PTW32_STATIC_LIB到头文件中。
于 2015-10-26T11:06:15.777 回答