我在 Cygwin 上安装了 Python 3。但是,我无法通过pip
. 有没有办法做到这一点?
6 回答
1)While installing cygwin, make sure you install the python/python-setuptools from the list. This will install "easy_install" package.
2) Type the following command:
easy_install-a.b pip
You must replace a.b
with your python version which can be 2.7 or 3.4 or whatever else.
如果您有多个 python 安装,那么您需要为每个安装分别安装 pip(可能还有 setuptools)。
为此,您可以先下载ez_setup.py
并使用 python3 运行它:
/usr/bin/python3 ez_setup.py
这应该安装 setuptools,并easy_install
为您的 python 版本创建一个脚本,例如/usr/bin/easy_install-3.2
,您可以使用它来安装 pip:
/usr/bin/easy_install-3.2 pip
这会将 pip 安装到您的 python3 站点包目录中,并再次创建一个脚本/usr/bin/pip-3.2
,您可以使用它来安装此 python 版本的包。
我认为mata 链接的替代安装说明最简单:
要安装 pip,请安全下载get-pip.py。
然后运行以下命令(可能需要管理员权限):
python get-pip.py
由于 OP 专门讨论 Python3,我认为我们需要指定以防万一用户已经安装了 Python2,这很有可能。
# If you don't have Python3 already, use apt-cyg:
apt-cyg install python3
# First update pip, pip2
pip2 install --upgrade pip
# Install pip3:
python3 -m ensurepip
# Finally update pip3:
pip3 install --upgrade pip
$ pip3 -V
pip 9.0.1 from /usr/lib/python3.4/site-packages (python 3.4)
顺便提一句。apt- cyg有几个分支,但维护得最好的是kou1okada,你会喜欢的。
编辑:2018-11-15
因为我一开始没有使用virtualenv,所以最近我不得不刷新我的 Cygwin Python3 安装,并意识到在这个过程中应该很明显,但很容易忘记的一些事情。
在 Cygwin(可能在大多数其他 *nix 发行版)上安装和使用 Python3 时,仅将基本 Python3 解释器安装为 Cygwin 包。从那时起,只使用pip安装程序。
在你使用pip安装或更新任何 python3 包后,你的 Cygwin 包管理器会抱怨你的包是
"Incomplete"
. 那是因为pip已经替换/更新了该包中的文件。检查:cygcheck.exe -c |grep Incomplete
。
不要使用 Cygwin 重新安装这些软件包。
# cygcheck.exe -c |grep Incomplete
python3-setuptools 34.3.2-1 Incomplete
所以我所做的就是清除所有与 python3 相关的 Cygwin 包,除了Python3 本身。然后我重新安装了唯一需要的:python3-setuptools
.
# apt-cyg remove python3-setuptools
apt-cyg install python3-setuptools
# Fix pip3 symlink (or just pip if you don't have python2)
ln -s /usr/bin/pip3.6 /usr/bin/pip3
# That also installs the Cygwin packages:
# python3-appdirs, python3-packaging, python3-pyparsing, python3-six
# Now, update setuptools with pip:
pip3 install -U --force-reinstall --only-binary=:all: --no-clean --no-cache-dir setuptools
# pip list |grep setuptools
setuptools 40.5.0
这也应该已经重新安装了所有setuptools依赖项以及最新的更新。
从现在开始,帮自己一个忙,开始使用虚拟环境。
在 Windows 上,您可以使用 pip 安装软件包。如果您在 cygwin 下安装了多个 python,请提供完整的 python 路径,例如 Python 2
/usr/bin/python2.7 -m pip install pyyaml
蟒蛇 3
/usr/bin/python3.6 -m pip install pyyaml
如果您没有安装 pip,请使用以下命令安装它
/usr/bin/python2.7 -m ensurepip
或者
/usr/bin/python3.6 -m ensurepip
我刚刚从https://www.scivision.co/install-pip-in-cygwin/和之前的答案中了解到,您只需在 cygwin 中将 pip2 用于 python2 或 pip3 用于 python 3,而不是使用 pip在窗户上。一整天都在想这个……