我正在努力将 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
文件夹)
如果有人知道我如何在这里诊断问题,我将不胜感激。
对此的更新。 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
现在一切对我来说都完成了。