欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

LInux下(centos7.2)更新 python3.7

程序员文章站 2022-05-04 09:26:38
进入超级管理员目录 su root 下载 wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz 找到下载的文件解压 tar -xzvf Python-3.7.0.tgz 进入解压好的文件目录 cd Python-3.7.0 创建安 ......
  •  进入超级管理员目录  

    su root

  • 下载

          wget https://www.python.org/ftp/python/3.7.0/python-3.7.0.tgz

  •  找到下载的文件解压

          tar -xzvf python-3.7.0.tgz

  •    进入解压好的文件目录

          cd python-3.7.0 

  •  创建安装文件夹

     kdir /usr/local/python37

  •  开始编译安装

          ./configure --prefix=/usr/local/python37

          ./configure --enable-optimizations

          提示:configure: error: no acceptable c compiler found in $path

          原来是缺少c编译器,需要安装gcc套件,于是采用如下命令安装,

          yum -y install gcc

          顺利下载安装成功,重复操作第四步命令:  ./configure --prefix=/usr/local/python3  顺利配置成功

          make

          make install

  •  错误

    错误1.

                  zipimport.zipimporterror: can’t decompress data,

      是因为缺少zlib 的相关工具包导致的,知道了问题所在,那么我们只需要安装相关依赖包即可,

                  1、打开终端,输入一下命令安装zlib相关依赖包:

                    yum -y install zlib*1

                  2、进入 python安装包,修改module路径的setup文件:

                    vim module/setup 1

                  找到一下一行代码,去掉注释:

                    #zlib zlibmodule.c -i$(prefix)/include -l$(exec_prefix)/lib -lz

                  去掉注释

                       zlib zlibmodule.c -i$(prefix)/include -l$(exec_prefix)/lib -lz123

                   另外,在这里说明一下,对于在安装python安装的过程中遇到这个问题,

        安装完上面的依赖包后,即可重新进入终端,进入python的安装包路径下执行:

                        make && make install 1

                      重新编译安装即可,

  •  错误2

                  modulenotfounderror: no module named '_ctypes' make: *** [install] 错误 1

                  3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可。

                    #yum install libffi-devel -y

                    #make install

  •  错误 3

                   zipimport.zipimporterror: can't decompress data; zlib not available make: *** [install] error 1

                   解决:

                       yum install zlib zlib-devel -y

  • 设置双版本

          mv /usr/bin/python /usr/bin/python_old2

  •  建立连接

          ln -s /usr/local/python37/bin/python37  /usr/bin/python

 

 

  • ps:(更新3.5.2)

    解压:tar -zxvf python-3.5.2.tgz

          进入解压目录: cd python-3.5.2

          创建安装目录: mkdir /usr/local/python3.5.2

          编译: ./configure –prefix=/usr/local/python3.5.2

          安装: make && make install

          备份原有python:mv /usr/bin/python /usr/bin/python_2.7.5

  •     第4步:建立软连接指向到当前系统默认python命令的bin目录,让系统使用新版本python

          mv /usr/bin/python /usr/bin/python2.7.5 //当前python的版本为2.7.5

          ln -s /usr/local/python3.5.2/bin/python3.5  /usr/bin/python

        输入:

            python -v

        即可查看当前默认python版本

        默认的python成功指向3.5.2以后,yum不能正常使用,需要修改yum的配置文件

  •     第5步:修改yum配置文件

       vi /usr/bin/yum

      把文件头部的

           !/usr/bin/python    改成    !/usr/bin/python2.7.5 //改为之前的老版本号

          保存退出,yum即可正常使用。如若有其他命令、软件不能正常使用,

          仿照yum配置文件的修改方法,修改其配置文件即可。至此,更新完毕。

  •     第6步:修改另外一个相关的配置文件

        vi  /usr/libexec/urlgrabber-ext-down

      该配置文件与yum install 命令有关,如果不修改该文件会报错

        file "/usr/libexec/urlgrabber-ext-down", line 28    except oserror, e:

      这是因为python版本不匹配:

       把文件头部的  !/usr/bin/python  改成    !/usr/bin/python2.7.5 //改为之前的老版本号