源码安装Python

发布时间 2023-11-17 16:53:51作者: 月下瓜田の一只猹
  • 本文使用的Linux发行版本为AlmaLinux 9.2 64位(CentOS停止更新后的完美替代发行版本)。
  • 本文安装的Python版本为3.12.0,其他版本方法类似。

准备工作

  1. 更新系统。
    dnf -y update
    
  2. 安装Python前,需确认当前系统是否已安装Python以及对应版本。

    不建议卸载原有Python版本,可能被应用于别的软件或脚本,这里主要在知道系统中已有的Python版本以及Python命令名。

    # 查看已安装的python版本
    python --version
    
    # 查看所有的python命令名,避免本次安装时名称冲突
    ls /usr/bin/python*
    
  3. 安装依赖。
    dnf -y group install "Development tools"
    
  4. 创建安装目录。
    mkdir -p /usr/local/Python-3.12.0
    
  5. 配置环境变量。
    1. 编辑.bash_profile文件。
      vim .bash_profile
      
    2. i在# User specific environment and startup programs后添加如下内容。
      export PYTHON_HOME=/usr/local/Python-3.12.0
      export PATH=$PYTHON_HOME/bin:$PATH
      
    3. 输入:wq!保存并退出。
    4. 使环境变量生效。
      source .bash_profile
      

源码安装Python

  1. 获取源码链接。
    1. 进入Python官网
    2. 单击Downloads > Source code
      image
    3. 找到想要下载的版本,右键复制链接地址。
      image
  2. 下载。
    wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz
    
  3. 解压源码包。
    tar -xvf Python-3.12.0.tgz
    
  4. 编译安装。
    cd Python-3.12.0
    
    ./configure --prefix=$PYTHON_HOME
    make
    make install
    
  5. 查看安装目录安装的命令名。
    ll $PYTHON_HOME/bin
    
    返回结果示例:
    total 29720
    lrwxrwxrwx 1 root root        9 Nov 17 16:29 2to3 -> 2to3-3.12
    -rwxr-xr-x 1 root root      116 Nov 17 16:29 2to3-3.12
    lrwxrwxrwx 1 root root        8 Nov 17 16:29 idle3 -> idle3.12
    -rwxr-xr-x 1 root root      114 Nov 17 16:29 idle3.12
    -rwxr-xr-x 1 root root      244 Nov 17 16:29 pip3
    -rwxr-xr-x 1 root root      244 Nov 17 16:29 pip3.12
    lrwxrwxrwx 1 root root        9 Nov 17 16:29 pydoc3 -> pydoc3.12
    -rwxr-xr-x 1 root root       99 Nov 17 16:29 pydoc3.12
    lrwxrwxrwx 1 root root       10 Nov 17 16:29 python3 -> python3.12
    -rwxr-xr-x 1 root root 30408176 Nov 17 16:29 python3.12
    -rwxr-xr-x 1 root root     3040 Nov 17 16:29 python3.12-config
    lrwxrwxrwx 1 root root       17 Nov 17 16:29 python3-config -> python3.12-config
    

    安装的Python命令名为python3.12,安装的pip命令名为pip3.12

  6. 因为已经添加了环境变量了,因此在服务器任意位置执行python3.12即可执行python命令,执行pip3.12即可执行pip命令。
    1. 创建一个helloword.py文件。
      cd ~
      vim helloword.py
      
    2. i输入如下内容。
      print('Hello World!')
      
    3. 输入:wq!保存并退出。
    4. 执行python3.12 helloword.py运行Python文件。
      返回结果示例:
      Hello World!