前言:
如果你也是用的centos系统,打算装python3.0以上版本,再装python下载工具pip,那么恭喜你,你可能也会像我一样遇到各种各样的问题!
另外非常重要的一点:centos都会自带python版本,比如centos6.4自带python2.4,尽量不要管它,因为有程序可能依赖目前的python2环境,比如yum.
如果动了它就会出现yum不能使用的情况,最糟糕的是覆盖掉了或者删除掉了原来的 /usr/bin/python,没有备份(我是这样的)。这样子的话建议重装系统吧,再按下面的步骤安装。
我自己之前安装setuptoos也出现了 raise URLError.搜了很久也没搜到解决办法,反正重新按照下面的步骤,最后是会成功的!
重点:(本人踩过的几个坑)
安装python以前尽量安装下面几个包,坑太多,都是泪
yum install gcc -y
yum install zlib zlib-devel -y
yum install openssl openssl-devel -y
一、安装python3.5
从官网上wget python3.5安装包:
wget --no-check-certificate https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
解压到你的安装目录(统一安装包目录,便于管理):
tar -zxvf Python-3.5.0.tgz
cd Python-3.5.0
./configure --prefix=/usr/local/python3.5 --enable-shared
make && make install
ln -s /usr/local/python3.5/bin/python3 /usr/bin/python3
此时运行python3命令的话会报错,缺少.so文件,我们需要进行如下操作:
cp -R /usr/local/python3.5/lib/* /usr/lib64/
ok!此时python3的基础环境已经安装完成!
二、安装setuptools以及pip
丰富的第三方库是Python的优势所在,为了更方便的安装第三方库,使用pip命令,需要进行相应的安装。
1、安装pip前需要前置安装setuptools
wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
tar -zxvf setuptools-19.6.tar.gz
cd setuptools-19.6.tar.gz
python3 setup.py build
python3 setup.py install
报错:RuntimeError: Compression requires the (missing) zlib module
我们需要在linux中安装zlib-devel包,进行支持。
yum install zlib-devel
需要对python3.5进行重新编译安装。
cd Python3.5
make && make install
又是漫长的编译安装过程。
再重新安装setuptools
python3 setup.py build
python3 setup.py install
2.安装pip
wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb
tar -zxvf pip-8.0.2.tar.gz
cd pip-8.0.2
python3 setup.py build
python3 setup.py install
测试:
我们使用pip安装一个python3第三方库:python3 -m pip install paramiko
(其他很多地方比如廖雪峰网站讲的是 pip install 安装,这里我貌似不行!)
报错:ImportError: cannot import name ‘HTTPSHandler‘
缺少openssl的开发环境,继续安装
yum install openssl-devel
继续重新安装编译python3.5(其他的不需要重新编译)
再次执行安装命令,成功。
本文出自 “IT--小哥” 博客,请务必保留此出处http://402753795.blog.51cto.com/10788998/1859443
原文地址:http://402753795.blog.51cto.com/10788998/1859443