1. 我們先看看原生現有的python2在哪裡
[root@kevin /]# whereis python
python: /usr/bin/python /usr/bin/python2.7 /usr/bin/python.bak /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/include/python2.7 /usr/share/man/man1/python.1.gz
[root@kevin bin]# ll python*
lrwxrwxrwx. 1 root root 9 5月 27 2016 python2 -> python2.7
-rwxr-xr-x. 1 root root 7136 11月 20 2015 python2.7
lrwxrwxrwx. 1 root root 7 5月 27 2016 python.bak -> python2
2. 接下來我們要安裝編譯Python3的相關包,安裝相對應套件
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
這裡面有一個包很關鍵libffi-devel
,因為只有3.7才會用到這個包,如果不安裝這個包的話,在make階段會出現如下的報錯:
# ModuleNotFoundError: No module named '_ctypes'
3. 安裝pip,因為CentOs 是沒有pip 的。
yum -y install epel-release
#安装pip
yum install python-pip
4. 可以用python 安裝一下wget
pip install wget
5. 我們可以下載python3.7的源碼包了
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
#解壓縮
tar -zxvf Python-3.7.0.tgz
#解壓縮後,依序執行下面指令進行編譯
./configure prefix=/usr/local/python3
make && make install
如果最後沒提示出錯,就代表正確安裝了,在/usr/local/目錄下就會有python3目錄
6. 添加Link
#添加python3的link
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3.7
#添加 pip3 的link
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3.7
#測試是否成功
python -V