本文爲學習記錄,以防遺忘。python
因爲debian8 python3是3.4版本,算是比較老的了,下載很多新版本的軟件只支持python3.5或者更高。因此須要再編譯安裝新版本。這裏以安裝python3.7.3爲例。緩存
首先先編譯安裝opensslbash
安裝依賴:ide
# sudo apt install zlib1g-dev
下載源碼包學習
# wget http://www.openssl.org/source/openssl-1.1.1.tar.gz
生成makefile文件ip
# cd openssl-1.1.1 # ./config --prefix=/usr/local/openssl shared zlib
編譯安裝ssl
# make && sudo make install
增長動態庫配置文件
get
# sudo echo "/usr/local/openssl/lib" > /etc/ld.so.conf.d/ssl.conf
刷新動態庫緩存源碼
# sudo ldconfig
編譯安裝python3.7.3openssl
安裝依賴
# 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)