无法使用 pip 安装软件包:“错误 [WinWrror 5] 访问被拒绝”

问题描述 投票:0回答:1

我正在努力将 hdbscan 安装到虚拟环境中。我试图将其作为 bertopic 安装的一部分来执行此操作 - 在尝试将 hdbscan 作为依赖项安装时也失败。

我已经浏览了许多有关此错误的页面并尝试了几乎所有方法,但似乎没有任何效果。以下是具体细节和我所尝试过的。

  • 我使用的是 Windows 11

  • 我正在尝试安装到虚拟环境:

    py -m venv [path-to-environment]
    请注意,当我激活虚拟环境时,我收到以下错误
    '"C:WINDOWS\System32\chcp.com"' is not recognized as an internal or external command, operable program or batch file.
    。尽管如此,环境还是激活了。

  • 最初在尝试安装时我遇到了 有关 MS C++14 要求的问题。我安装了那些和 离开时出错。

  • 现在我无法解决错误:

    Building wheel for hdbscan (pyproject.toml) did not run successfully.
    具体错误如下:

    building 'hdbscan._hdbscan_tree' extension
          error: [WinError 5] Access is denied
          [end of output]
    
      note: This error originates from a subprocess, and is likely not a problem with pip.
      ERROR: Failed building wheel for hdbscan
    Failed to build hdbscan
    ERROR: Could not build wheels for hdbscan, which is required to install pyproject.toml-based projects
    
  • 无论我尝试

    py -m pip install bertopic
    还是
    py -m pip install hdbscan

    ,都是同样的错误
  • 我尝试以管理员身份运行 - 因为 python 位于管理路径中,所以在重复上述命令时,我调用

    python
    而不是
    py

  • 我尝试在虚拟环境中更新 pip

    py -m pip install --upgrade pip
    - 一切都很好

  • 我已确保从命令提示符而不是 IDE 运行

  • 我已经重新启动了我的机器,并尝试将其作为我做的第一件事运行

  • 我尝试添加

    --user
    选项,但我得到的答复是 这在 virtualenv 中可用:
    ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.

  • 我注意到我的 venv 的权限设置为

    read only
    。我更改了此设置并再次运行安装。没有什么区别。请注意,我可以安装其他软件包,并将权限设置为
    read-only
    ,所以我认为这不是问题。

  • 我查看了我的

    AppData\Local\Temp
    目录以删除任何与 pip 相关的文件夹,但什么也没找到(尽管其中有一些
    pyright
    python-languageserver
    文件夹)

如果有人知道我如何在这里诊断问题,我将不胜感激。

pip hdbscan
1个回答
0
投票

对此的更新。 mikeolubode 在 bertopic 存储库 (https://github.com/MaartenGr/BERTopic/issues/1922) 上的帮助表明,这将与

python 3.9
一起安装。我还将这个问题发布到 HDBSCAN 存储库,并更新了问题似乎出在
python 3.12.3

对于任何想要更具体说明的人:

如果您还没有删除现有的虚拟环境,请删除。

下载并安装python 3.9 (https://www.python.org/downloads/release/python-390/

调用 python 3.9 创建新的虚拟环境。我正在使用 python 启动器,因此在命令行中是:

py -3.9 -m venv [path_to_your_venv]

激活您的环境:

[path_to_your_venv]\Scripts\activate

并安装HDBSCAN:

py -m pip install hdbscan

现在一切对我来说都完成了。

© www.soinside.com 2019 - 2024. All rights reserved.