Python 3 on CentOS 6.5

原生方式安装python 3

  • 下载python-3.6.5.tar.xz
  • 安装python(3.6.5)需要的编译包
yum install -y zlib zlib-devel  gcc gcc-c++  make  cmake  (python-devel sqlite sqlite-devel 单装python时这三个可选)

如果你安装基于 glib 开发的程序,只需要安装 <glib> 包就行了。
但是如果你要编译使用了 glib 的源代码,则需要安装 <glib>-devel

  • 编译
$ xz -d Python-3.6.5.tar.xz
$ tar xf Python-3.6.5.tar
$ cd Python-3.6.5
$ ./configure --prefix=/usr/local/python-3.6.5 --enable-shared
$ make && make install
  • 加软链
$ cd /usr/local/python-3.6.5/bin
$ mv python3.6 python
$ rm -rf python3
$ ln -s python python3
$ ln -s /usr/local/python-3.6.5/lib/libpython3.6m.so.1.0 /usr/lib64/
# 测试配置是否成功,显示 Python 3.6.5即表示成功
$ python --version  
  • 加环境变量
# 在/etc/profile中文本最后追加(需要root权限),或者追加到~/.bashrc文件:
export PYTHON_HOME=/usr/local/python-3.6.5
export PATH=${PYTHON_HOME}/bin:$PATH # 如果之前已经设置了path,只需要在加${PYTHON_HOME}/bin:即可
# :wq 保存退出
$ source /etc/profile

小Tips

为保证pip安装的时候调用的是py3,可以使用pip3命令安装

Python安装完毕后,提示找不到ssl模块的解决步骤

pip3 不可用问题用下面的方式重新编译就好了

  • 查看openssl安装包,发现缺少openssl-devel包
$ rpm -aq|grep openssl
openssl-0.9.8e-20.el5
openssl-0.9.8e-20.el5
  • yum安装openssl-devel
$ yum install openssl-devel -y

$ rpm -aq|grep openssl

openssl-0.9.8e-26.el5_9.1
openssl-0.9.8e-26.el5_9.1
openssl-devel-0.9.8e-26.el5_9.1
openssl-devel-0.9.8e-26.el5_9.1
  • 重新编译python
#修改Setup文件
$ vi /usr/software/Python-3.6.5/Modules/Setup

#修改结果如下:
# Socket module helper for socket(2)
_socket socketmodule.c
# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
#SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto
  • 重新编译
# 在python_home目录中执行:
$ make & make install
  • 测试 pip3
$ python --version
$ pip3
$ pip3 install --upgrade pip # 升级下pip
    原文作者:祗談風月
    原文地址: https://www.jianshu.com/p/9c7fe002075e
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞