centos 升级python 3.7

 1.更新yum

yum update

2.安装Python 3.7.3所需的依赖

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel gcc make

3.下载安装包解压

  1. cd /usr/src
  2. wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz
  3. tar -zxvf Python-3.7.3.tgz

4.编译安装

  1. cd Python-3.7.3/
  2. ./configure --enable-optimizations
  3. make altinstall

可能出现报错:

“ModuleNotFound:No module named '_ctypes'”

执行以下命令重新编译安装

yum install libffi-devel

5.创建软连接

  1. mv /usr/bin/python /usr/bin/python.bak
  2. ln -s /usr/local/bin/python3.7 /usr/bin/python
  3. mv /usr/bin/pip /usr/bin/pip.bak
  4. ln -s /usr/local/bin/pip3.7 /usr/bin/pip

6.查看是否安装成功

  1. [root@localhost bin]# python -V
  2. Python 3.7.3
  3. [root@localhost bin]# pip -V
  4. pip 19.1.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

4.后续yum问题

当切换成Python3以后发现yum命令不能用了,一执行就会报错:

  1. # yum
  2. File "/usr/bin/yum", line 30
  3. except KeyboardInterrupt, e:
  4. ^
  5. SyntaxError: invalid syntax

这是因为系统yum命令使用的还需要使用Python2,分别修改/usr/libexec/urlgrabber-ext-down和/usr/bin/yum文件

  1. # vi /usr/libexec/urlgrabber-ext-down
  2. # vi /usr/bin/yum
  3. 首行的#! /usr/bin/python
  4. 都改为#! /usr/bin/python2.7

这样在切换到Python3.6以后也可以正常使用yum了

5.firewall-cmd也需要手工设置一下

  1. # vim /usr/bin/firewall-cmd
  2. 首行改为
  3. #!/usr/bin/python2.7 -Es

6.补充知识点

貌似CentOS7里面使用yum install python36后内置的就有pip,但是调用的时候不能直接pip install xxx这种写法,得这样写:

  1. # python -m pip install [Package_to_install]
  2. 这里需要将python切换到3.6以后再执行

 

补充知识点

如何将pip更新到最新版本?

只用使用命令如下就可以更新了。

python -m pip install --upgrade pip

Anaconda更新命令为

conda install mingw libpython

感觉公式编辑器在线LateX公式编辑器挺好用的。网址为:http://private.codecogs.com/latex/eqneditor.php

评论

此博客中的热门博文

gost 手动搭建

Windows/PC 电脑端配置独享IP网络节点教程

什么是V2Ray?V2Ray和SSR有什么区别?