1. 程式人生 > 實用技巧 >python3環境搭建

python3環境搭建

前因後果

業務需要 決定升級python2.7至python3

升級之前:

[root@shanghai-adminserver ~]# python -V
Python 2.7.5

升級之後:

[root@shanghai-adminserver ~]# python -V 
Python 3.9.1 

安裝步驟(原python2保留)

1、建立安裝目錄:

cd /usr/local
mkdir python3

2、下載安裝包,解壓:

wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
tar -xvf Python-3.9.1.tgz

3、安裝相關依賴

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

4、編譯、安裝

cd Python-3.9.1    
./configure --prefix=/usr/local/python3/     # 檢查編譯環境/相關庫檔案/配置引數,生成makefile
make                             # 對原始碼進行編譯,生成可執行檔案
make install                      # 將生成的可執行檔案安裝到當前計算機中指定位置

5、建立軟連線

注意:如果/usr/bin 目錄下已有python、pip 先刪除之

ln -s /usr/local/python3/bin/python3 /usr/bin/python
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

注意事項

1、安裝時報錯ModuleNotFoundError: No module named '_ctypes'的解決辦法(步驟3安裝依賴的時候已經安裝過)

安裝libffi-devel 然後重新 make&&make install

yum install libffi-devel

2、關於_ssl模組異常的問題,由於伺服器/usr/local/ssl目錄下安裝的不是openssl,本機openssl版本也是1.0.2,所以沒有按照其他人方式進行

去除下面檔案中關於ssl的三條註釋,然後重新make&&make install

vi /usr/local/Python-3.9.1/Modules/Setup

3、升級python3之後yum無法使用的問題

因為yum的包管理,是基於python2.x寫的,跟python3有語法上的不相容

分別修改以下yum的配置檔案

將第一行的 #!/usr/bin/python 改為 #!/usr/bin/python2 (自己核實/usr/bin/目錄下關於python2的情況)

vi /usr/bin/yum
vi /usr/libexec/urlgrabber-ext-down

參考文章