本文爲學習記錄,以防遺忘。
由於debian8 python3是3.4版本,算是比較老的了,下載不少新版本的軟件只支持python3.5或者更高。所以需要再編譯安裝新版本。這裏以安裝python3.7.3爲例。
首先先編譯安裝openssl
安裝依賴:
# sudo apt install zlib1g-dev
下載源碼包
# wget http://www.openssl.org/source/openssl-1.1.1.tar.gz
生成makefile文件
# cd openssl-1.1.1 # ./config --prefix=/usr/local/openssl shared zlib
編譯安裝
# make && sudo make install
增加動態庫配置文件
# sudo echo "/usr/local/openssl/lib" > /etc/ld.so.conf.d/ssl.conf
刷新動態庫緩存
# sudo ldconfig
編譯安裝python3.7.3
安裝依賴
# sudo apt install libffi-dev
若缺少這個包,編譯時候會報這個錯誤:no module named '_ctypes'
下載源碼
# wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz
生成makefile文件
# ./configure --prefix=/usr/local/python3.7 --with-openssl=/usr/local/openssl
編譯安裝
make && sudo make install
創建軟連接到/usr/bin/ 路徑,注意檢查/usr/bin/有沒有相同名字(如python3.7,pip3),若有的話,刪除即可。建議不要覆蓋系統自帶的python3,不然會有不可預料的問題
# sudo ln -s /usr/local/python3.7/bin/python3.7 /usr/bin/python3.7 # sudo ln -s /usr/local/python3.7/bin/pip3.7 /usr/bin/pip3
檢測pip3 是否版本是否指向python3.7
# pip -V pip 19.0.3 from /usr/local/python3.7/lib/python3.7/site-packages/pip (python 3.7)