首先:更新gcc,因為gcc版本太老會導致新版本python包編譯不成功
代碼如下:
#yum -y install gcc
然后下載python源tar包
可利用linux自帶下載工具wget下載,如下所示:
wget http://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
下載完成后到下載目錄下,解壓
tar -xzvf Python-3.6.0.tgz
進入解壓縮后的文件夾
cd Python-3.6.0
在編譯前先在/usr/local建一個文件夾python3(作為python的安裝路徑,以免覆蓋老的版本)
mkdir /usr/local/python3
開始編譯安裝
./configure --prefix=/usr/local/python3
make
make install
注意 這一步可能出現Erro:zipimport.ZipImportError: can't decompress data; zlib not available
解決辦法 :
1、輸入一下命令安裝zlib相關依賴包: yum -y install zlib*
2、進入 Python安裝包,修改Module路徑的setup.dist文件: vim module/setup.dist 找到一下一行代碼,去掉注釋: #zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz 去掉注釋 zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz 另外,在這里說明一下,對於在安裝Python安裝的過程中遇到這個問題,安裝完上面的依賴包后,即可重新進入終端,進入python的安裝包路徑下執行: make && make install
此時沒有覆蓋老版本,再將原來/usr/bin/python鏈接改為別的名字
mv /usr/bin/python /usr/bin/python_old2
再建立新版本python的鏈接
ln -s /usr/local/python3/bin/python3/usr/bin/python
這個時候輸入
python -V
就會顯示出python的新版本信息
[idolaoxu@localhost home]# python -V
Python 3.6.0
PS:如果不建立新安裝路徑python3,而是直接默認安裝,則安裝后的新python應該會覆蓋linux下自帶的老版本,也有可能不覆蓋,具體看安裝過程了,
這個大家可以自己試驗下,當然如果還想保留原來的版本,那么這種方法最好不過了。
最后擴充下,
這種方法雖然能安裝成功,但是它帶來了新的問題,比如yum不能正常用了
修改/usr/bin/yum的第一行為:
#!/usr/bin/python_old2
就可以了