如何在 CentOS 7 上安裝 Python 3

當前最新的 CentOS 7.5 默認安裝的是 Python 2.7.5,而且默認的官方 yum 源中不提供 Python 3 的安裝包。這裏主要介紹兩種在 CentOS 7 中安裝 Python 3 的方法。

使用 SCL 安裝

1. 啓用 SCL

SCL 是一個社區項目,它能夠在同一系統上構建,安裝和使用多個版本的軟件,而不會影響系統默認軟件包。python

yum -y install centos-release-scl

2. 安裝 Python

如今咱們能夠訪問SCL存儲庫,咱們能夠安裝咱們須要的任何Python 3.x版本,目前最新版本爲 Python 3.6。sql

yum -y install rh-python36

3. 修改環境變量

要訪問Python 3.6,須要使用 scl 工具爲系統環境變量添加自定義路徑。centos

scl enable rh-python36 bash

4. 查看安裝信息

查看 Python 環境路徑:bash

[root@localhost ~]# which python
/opt/rh/rh-python36/root/usr/bin/python

查看 Python 當前版本:網絡

[root@localhost ~]# python --version
Python 3.6.3

編譯源碼安裝

1. 基本工具

  • wget(網絡下載工具)
  • gcc(基於C/C++的編譯器)
  • make(工程化編譯工具)
yum -y install wget gcc make

2. 安裝依賴

  • bzip2-devel(解決 import bz2 報錯)
  • ncurses-devel(解決 import curses 報錯)
  • sqlite-devel(解決 import sqlite3 報錯)
  • gdbm-devel(解決 _dbm _gdbm 缺失)
  • xz-devel(解決 _lzma 缺失)
  • tk-devel(解決 _tkinter 缺失)
  • readline-devel(解決 readline 缺失)
  • libffi-devel(解決 _ctypes 缺失)
yum -y install bzip2-devel ncurses-devel sqlite-devel gdbm-devel xz-devel tk-devel readline-devel libffi-devel

3. 編譯源碼

下載源碼包:工具

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

解壓源碼包:code

tar -zxvf Python-3.7.0.tgz

進入解壓目錄:sqlite

[root@localhost ~]# cd Python-3.7.0
[root@localhost Python-3.7.0]#

配置安裝目錄:ip

./configure prefix=/usr/local/python3

編譯並安裝:get

make && make install

4. 添加連接

在用戶環境變量目錄下,建立一個啓動程序的軟連接。

ln -s /usr/local/python3/bin/python3.7 /usr/local/bin/python

5. 查看版本

[root@localhost ~]# python --version
Python 3.7.0

SLC 與編譯安裝各有優缺點。

SLC 方式安裝更簡單,不須要考慮依賴的問題。並且默認安裝在 /opt 目錄下(至關於 Windows 中 D:\SoftWare),不影響系統環境,直接 rm -rf 也不要緊。侷限在於 SLC 只提供 python3.4 - python3.6 的版本,而且會修改 $PATH 的路徑。

編譯安裝則能夠選擇任意 python 的版本(只要能下載的到),可是編譯與安裝過程當中會遇到不少 No module named 錯誤。若是再將啓動程序軟連接添加到系統環境變量目錄(/usr/bin)下,依賴 python2 的 yum(#!/usr/bin/python)工具就不能使用了。

相關文章
相關標籤/搜索