【问题标题】:Not able to install pThread on Windows Xampp无法在 Windows Xampp 上安装 pThread
【发布时间】:2023-06-24 09:12:01
【问题描述】:

更新:看起来我在这里没有做错任何事情。当我执行一个线程示例时,它工作正常。我不确定,那为什么我在启动 Apache 时会出现这些错误。

有什么想法吗?


我正在尝试在 Xampp (Windows 7) 上安装 pThread,如下所示:

  1. 我的PHP版本信息:5.4.7 VC9 x86

  2. 我已经下载php_pthreads-0.0.45-5.4-ts-vc9-x86.zip

  3. 然后我将pthreadVC2.dll 添加到C:\xampp\php 和php_pthreads.dll 到C:\xampp\php\ext
  4. 在php.ini中,我添加了extension=php_pthreads.dll
  5. 重新启动 Apache 服务器并收到以下错误:

关于为什么这不起作用的任何建议?

【问题讨论】:

  • 我也有这个问题。你找到解决方案了吗?
  • 对不起,我没有找到任何解决方案。

标签: php apache pthreads xampp


【解决方案1】:

我不使用Windows,但根据手册中评论的人,您还必须添加:

LoadFile "C:/xampp/php/pthreadVC2.dll"

到您的 httpd.conf(手册中提到的 httpd-xampp.conf)

【讨论】:

  • 我想如果我想在浏览器中使用 pThreads。我在命令提示符下使用它。
  • 你为什么提到重启 Apache 呢?无论如何,您可以通过在 C:\Windows\System32 中粘贴 pthreadVC2.dll 来解决它,您可以通过在包含 pthreadVC2.dll 和 php.exe 的目录中运行命令来解决它......您收到的错误非常明确,与 pthreads 扩展无关,这完全取决于 pthreadVC2 在正确的路径中......这取决于你在做什么......
  • 我已经将 pthreadVC2.dll 添加到正确的路径(与 php.exe 相同),并且根据我的更新,它也可以正常工作。唯一的问题是我在启动 apache 时遇到了这个错误。我会尝试把它放在 System32 中,看看是否能解决问题。感谢回复
【解决方案2】:

这是我所做的并为我工作的:

  1. 使用 phpinfo() 检查 PHP 的编译器版本,就像您已经完成的那样。我的和你的都是 VC9
  2. 下载并安装与您的编译器版本匹配的正确 Pthread 包。我下载了“php_pthreads-0.0.45-5.4-ts-vc9-x86.zip”文件。确保您的操作系统版本也可以计算(32 位或 64 位)。
  3. 在临时文件夹中提取 Zip 文件
  4. 将 php_pthreads.dll 复制到 'bin\php\ext\' 文件夹中
  5. 将 pthreadVC2.dll 复制到 'bin\php\' 文件夹中
  6. 将 pthreadVC2.dll 复制到“bin\apache\bin”文件夹中
  7. 将 pthreadVC2.dll 复制到“C:\windows\system32”文件夹中
  8. 打开 php\php.ini 并在文件末尾添加不带引号的“extension=php_pthreads.dll”
  9. 重新启动服务器,您不会收到任何错误消息。

祝你好运

【讨论】:

  • 我也为我工作过。你能解释一下为什么我们必须在 5,6 和 7 三个不同的地方复制 VC2.dll 吗?在php.net/manual/en/pthreads.installation.php 他们说“Windows 用户需要采取额外的步骤,将 pthreadVC2.dll(随 Windows 版本分发)添加到他们的 PATH 中。”他们指的是哪条路?
  • 第 7 步是不必要的,顺便说一句,我的工作正常没有它。
【解决方案3】:

复制“pthreadVC2.dll”文件到“windows/system32”目录。然后重启apache。它对我有用。

【讨论】: