CentOS 6 下安装Python 3
Page content
CentOS 6.x 默认带的Python 还是2.6版本,我们大量的程序都在python 3.x下运行, 因此需要手动安装python 3。
由于没有编译好的rpm包安装,于是手动编译安装即可。好在python编译非常简单,而且还算是比较快。 (相对于macport。的编译来说已经好多了)
安装依赖
在配置安装之前,需要安装一些依赖库,不然会导致一些功能不可用。
#yum install -y gcc make openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
配置安装
下载最新的安装包(截止2013/11/05),还是3.3.2版本。
#wget http://python.org/ftp/python/3.3.2/Python-3.3.2.tgz
#tar xzf Python-3.3.2.tgz
#cd Python-3.3.2
#./configure --prefix=/opt/apps/python3
#make
#make install
如果没有指定prefix,将默认安装在/usr/local下,因此PATH中可以找到。我们要安装一个可以复制安装的版本,所以安装在指定目录下。
设置环境
可以将/opt/apps/python3/bin加入系统环境变量,
#echo 'export PATH=$PATH:/opt/apps/python3/bin' >> ~/.bash_profile
而我们简单的建立软链接比较方便
#ln -s /opt/apps/python3/bin/python3 /usr/bin
确认安装成功
# python3 -V
Python 3.3.2
安装pip
pip用于安装依赖软件比较方便,因此推荐安装上.
#wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - |python3
#wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py -O - |python3
#ln -s /opt/apps/python3.3/bin/pip-3.3 /usr/bin/
安装需要的第三方库
例如mysql-connector和requests
#pip-3.3 install mysql-connector-python
#pip-3.3 install requests
如果安装pip时发生如下错误:
ImportError: No module named bz2
那么说明安装的python 3 缺少依赖库bzip2-devel,需要先安装依赖库然后再编译安装。
查看已安装Python的编译参数可参考: stackoverflow