MSYS2:安装后 pip 不在路径中(找不到命令)

MSYS2: pip is not in path after installation (command not found)

我在 MSYS2 shell 中使用以下命令在 MSYS2 上安装了 pip: pacman -S mingw-w64-x86_64-python-pip (包的网页:https://packages.msys2.org/package/mingw-w64-x86_64-python-pip

安装后,当我尝试在 MSYS2 shell 中 运行 pip 时,我得到:bash: pip: command not found

出于某种原因,它没有在 MSYS2 系统路径中的任何位置安装 pip。 C:\msys64\usr\bin 中没有名为“pip”的文件。但是,安装确实在 C:\msys64\mingw64\bin 中添加了一个名为“pip”的文件。此目录不是 MSYS2 使用的默认路径的一部分。

我应该将 C:\msys64\mingw64\bin 添加到我的 MSYS2 路径吗?更重要的是,为什么它将 pip 安装到不在 PATH 中的目录中?这种烦恼是有原因的吗?

documentation explains一样,MSYS2项目由两部分组成:MinGW和MSYS proper。它们之间的区别如下:

  • MinGW 包是本机 Windows 二进制文件,它们本身用于构建本机 Windows 软件。它们可以 运行 独立于 MSYS,尽管 MSYS 可以简化它们的使用,例如通过提供类 Unix shell 脚本语言。
  • (正确的)MSYS 包 运行 在一个虚拟 POSIX 环境中,作为构建系统意味着 bootstrap MSYS2 的其余部分。它包含足够的 POSIX 特性(例如熟悉的 /bin/lib/etc 等目录结构),允许从类 Unix 系统移植软件而无需广泛适应它到 Windows 平台。 MSYS 部分的开发工具用于构建依赖于 MSYS 环境的软件。

mingw-w64-x86_64-python-pip 包属于 MinGW 部分。为了使用它,您需要启动 MinGW shell,以便您可以访问用于构建本机 Windows 软件的 MinGW 环境。如果你想 pip 在 MSYS shell 中可用,你需要安装 MSYS 包 python-pip.

至于手动添加/mingw64/bin到你的PATH:不,你绝对是not supposed to do that。不支持以这种方式混合环境;关键是它们要分开。