首頁 / 精華文章 / [CentOS]更新Python 3.XX

[CentOS]更新Python 3.XX

Python(蟒蛇)是一個高階程式語言,他實現了modules(模組)、exceptions(例外)、dynamic typing(動態資料)、高階的資料形態以及classes(物件)。Python結合了卓越的力量與清晰的語法,有著與系統呼叫(system calls)溝通的界面。
Python的extensions(延伸功能)很強大,可以支援許多作業系統上面程式的界面。例如Unix-like、Mac、PC使用MS-DOS, Windows, Windows NT, OS/2等。標準的extensions例如PIL, COM, Numeric, oracledb, kjbuckets, tkinter, win32api等等的extensions,Python就像是個黏膠一般,可以很方便地將兩種異種軟體綁在一起工作。
同時Python也是2007年TIOBE所選出的年度程式語言,Google也有使用作為內部開發使用的程式語言。不過呢! CentOS上的Python兩百萬年沒更新過,始終是2.X的版本,這邊簡單做個更新Python的紀錄 👫
Step.1 下載需要的套件
yum install -y libffi-devel zlib-devel sqlite-devel gcc gcc-c++ openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
Step.2 編譯安裝Python(安裝時間可能約需5分鐘以上)
cd /usr/src
wget --no-check-certificate https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tar.xz
xz -d Python-*.tar.xz
tar -xf Python-*.tar
cd Python-*
./configure --enable-shared --enable-ipv6 --enable-optimizations
make && make install
make clean && make distclean
cd ..

Step.3 讓系統認識新的Python
ln -sf /usr/local/bin/python3.7 /usr/bin/python3
echo "/usr/local/lib" >> /etc/ld.so.conf
/sbin/ldconfig

Step.4 安裝Python的setuptools
cd /usr/src
wget https://bootstrap.pypa.io/get-pip.py
python3 get-pip.py
rm -f get-pip.py
ln -sf /usr/local/bin/pip3 /usr/bin/pip3
/sbin/ldconfig

更新版本
pip3 install -U pip && pip3 install -U setuptools
Step.5 然後再輸入指令檢查Python版本有沒有更新到3
python3 -V
pip3 -V
easy_install --version

Step.6 修復YUM套件管理員
由於YUM依賴Python 2,並且不支援新版本,所以舊版本是絕對不能移除的唷! 下面的做法就是讓YUM延用舊版本的Python。
rm -f /usr/bin/python.bak
mv -f /usr/bin/python /usr/bin/python.bak
cp /usr/bin/python.bak /usr/bin/python2.7

打開下列兩個檔案後分別修改第一行
vi /usr/bin/yum
vi /usr/libexec/urlgrabber-ext-down
請注意第一行呼叫python的指令
!#/usr/bin/python
修改為
!#/usr/bin/python2.7
就這樣 0.0 大功告成~

關於 窮苦人家的小孩

In every democracy, the people get the government they deserve. ~Alexis de Tocqueville

您可能會喜歡

介紹幾款 Docker 鏡像

Docker是已經很成熟的應用 …