【发布时间】:2017-09-26 06:28:05
【问题描述】:
我的最终目标是下载并安装 awscli
http://docs.aws.amazon.com/cli/latest/userguide/awscli-install-linux.html
似乎需要 python 和 pip 才能实现我的目标。
通过 yum 安装 python 对我不起作用,所以我手动下载并安装了 python3,如下所示:
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
tar xf Python-3.6.1.tar.xz
cd Python-3.6.1.tar.xz
./configure
make
sudo make altinstall
当我这样做时
pip3.6 --version
我明白了:
Traceback (most recent call last):
File "/usr/local/bin/pip3.6", line 7, in <module>
from pip import main
ImportError: cannot import name 'main'
环境: RHEL 6.6 通过 ssh 访问
发生了什么事?如何在我的 linux 机器上正确安装 pip 和 python3.6?
编辑:
尝试通过 yum 安装时失败,所以我试图避免使用 yum:
[asemani@rcdc9pfda5r Python-3.6.1]$ sudo yum -y install python-pip
[sudo] password for asemeani:
Loaded plugins: security
Setting up Install Process
No package python-pip available.
Error: Nothing to do
另一个编辑:
导入 sys 然后调用 sys.path 这就是我得到的:
[asemani@rcdc9pfda5r Python-3.6.1]$ python3.6
Python 3.6.1 (default, Apr 28 2017, 11:03:27)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/usr/local/lib/python36.zip', '/usr/local/lib/python3.6', '/usr/local/lib/python3.6/lib-dynload', '/usr/local/lib/python3.6/site-packages']
>>> quit()
[asemani@rcdc9pfda5r Python-3.6.1]$ ls -l /usr/local/lib/python3.6/site-packages
total 32
-rw------- 1 root root 126 Apr 27 23:45 easy_install.py
drwx------ 11 root root 4096 Apr 27 23:45 pip
drwx------ 2 root root 4096 Apr 27 23:45 pip-9.0.1.dist-info
drwx------ 5 root root 4096 Apr 27 23:45 pkg_resources
drwx------ 2 root root 4096 Apr 27 23:45 __pycache__
-rw-r--r-- 1 root root 119 Apr 27 23:45 README.txt
drwx------ 5 root root 4096 Apr 27 23:45 setuptools
drwx------ 2 root root 4096 Apr 27 23:45 setuptools-28.8.0.dist-info
【问题讨论】:
-
"通过 yum 安装 python 对我不起作用" - 它是怎么失败的?
-
不确定退出,但 yumming 时似乎找不到 python 或 pip 包。我将更新我的问题以包含详细信息
-
删除它然后重新安装。
yum remove python-pip然后yum install python-pip -
相信你手动正确安装了 Python 3.6。然后,您应该可以从终端获得
python3和pip3命令。sys.path使用python3在import sys之后包含什么?你应该有类似 /somepath/python3.6/site-packages 的东西。那么ls -l /somepath/python3.6/site-packages | grep pip打印出来的是什么?
标签: python linux amazon-web-services pip rhel6