• Linux之python3编译安装


    一,前言

    centos7默认是装有python的,咱们先看一下

    [root@glh ~ 20:18:03]#python
    Python 2.7.5 (default, Jul 13 2018, 13:06:57) 
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 

    默认自python2。

    但是python2在2020年就在更新了,所以我们要积极向python3转型。

    二,Centos7下安装python3

    1,下载python源码包

    https://www.python.org/ftp/python/  # 有各个版本
    这里我们下载python3.6.5版本
    https://www.python.org/ftp/python/3.6.5/
    下载.tar.xz结尾的
    https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz

    Centos下我们只需要执行wget 即可下载该源码包

    wget  https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz

    2,python依赖的环境,先装这些

    yum install gcc patch libffi-devel python-devel  zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y

    3,解压安装源码包

    wget https://www.python.org/ftp/python/3.4.7/Python-3.4.7.tar.xz
    xz -d Python-3.4.7.tar.xz
    tar -xf Python-3.4.7.tar
    cd到解压之后的Python-3.6.5之下,执行
    
    ./configure --prefix=/opt/python3.6.5
    
    然后执行
    make && make install
    1、./configure 是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。
    
    2、make 是用来编译的,它从Makefile中读取指令,然后编译。
    
    3、make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。

    4,添加环境变量

    [root@glh ~ 20:22:33]#vim /etc/profile
    # 在文件的最后一行配置PATH
    PATH=/opt/python3.6.5/bin:$PATH  # 这个/opt/python3.6.5/bin就是刚才安装的python3.6.5的路径
    :wq! 保存退出
    source /etc/profile 执行这句话让PATH生效

    也可以采用软连接的方式

    ln -s /opt/python3.6.5/bin python3  usr/bin/python3

    5,检查是否安装成功

    [root@glh ~ 20:36:50]#python3  输入python3显示下面信息即表示安装成功
    Python 3.6.5 (default, Nov 12 2018, 17:50:12) 
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
  • 相关阅读:
    Java程序员进阶:Java异常知识点梳理
    JVM内存模型(运行时数据区)
    史前最详细的:Java线程池核心流程解析
    10年大牛给Java 初学者的学习路线建议,如何学习 Java?
    异常处理(面试题)
    115道Java经典面试题(面中率高、全)
    Java异常处理(捕获异常)
    Java异常处理(观察常见异常)
    Java异常处理(异常基本概念)
    学习笔记:Java数组
  • 原文地址:https://www.cnblogs.com/qq631243523/p/10191726.html
Copyright © 2020-2023  润新知