今天在虚拟机中安装了 CentOs 7 ,安装完成后发现其自带的 Python 环境只有 Python 2.7 ,还需自己安装 Python 3,这点就不像 Ubuntu 那么友好了,希望将来会自带 Python 3 吧。
pip2 安装在最后
首先去官网下载 Python 3 的源码包呗。手动略过。。。
下载后先解压:
注 以下所有命令均在 root 环境下,因为某些权限问题
tar -xzvf Python-3.6.5.tgz
xzvf 自行输入 tar --help 查看
进入 Python-3.6.5:
cd Python-3.6.5
./configure --prefix=/usr/local/python3.6
确定安装目录 可以输入 ./configure --help 查看选项
开始编译 安装
make && make install
忘了说一件事,编译需要 gcc 所以,聪明的你肯定早已安装了
yum install gcc
在编译安装结尾中会报出错误,意思就是缺少一个模块,大概是这样,忘记截图了。。。
zipimport.ZipImportError: can‘t decompress data;zlib not avaliable
make: *** [install] Error 1
这是因为 Python 需要解压某些东西,需要这个模块,所以去安装吧:
yum install zlib-devel
安装完成后,打开 Python 3 会发现里面上下键不能用,这就尴尬了,原来是缺少一个模块用来转义,这些都是历史原因。有兴趣试一试后可以搜一搜。解决办法就是安装:
yum install readline-devel
再次 make && make install ,细心的你在 make && make install 过程中会发现有些问题,我还是没截图。。
这就是缺少某些模块,不过你用不到就没关系,为了以后,还是安装一下吧:
yum install bzip2-devel
yum install sqlite-devel
yum install gdbm-devel
yum install tk-devel
缺少什么对照自己电脑上出现的东西百度一下就可以找到了
然后继续 make && make install ,不出意料这次就会大功告成了!但是还有一个大问题,你输入 python3 大概不会进入解释器,因为它没有进入到环境变量中。创建软链接:
使 python3 和 pip3 生效
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
好奇怪,为什么 local 会变色
好了,就到这里了。
顺便提一句,CentOs 中的 Python 2.7 没有 pip 需要自己安装。
yum 的官方仓库中又没有 pip,所以可以安装 EPEL,我一开始对这个东西也是懵的,这是什么?
企业版 Linux 附加软件包(以下简称 EPEL)是一个 Fedora 特别兴趣小组,用以创建、维护以及管理针对企业版 Linux 的一个高质量附加软件包集,面向的对象包括但不限于 红帽企业版 Linux (RHEL)、 CentOS、Scientific Linux (SL)、Oracle Linux (OL) 。
说白了就是另外一个仓库,里面又好多软件。根据这个官方教程的指令:
这是 CentOs 7 的
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
一路 yes 之后,运行:
yum install python-pip
之后 pip2 就可以正常使用了。
具体可以到 /usr/bin/ 下 ls pip 或 ls python 查看。
原文地址:http://blog.51cto.com/13589319/2112881