Debain安裝python3.7

Debain安裝python3.7準(zhǔn)備工作

關(guān)鍵字:

  • python3.7
  • SSL
  • pip3安裝失敗
  • pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

gcc安裝

# 更新apt源
sudo apt update

安裝gcc  
sudo apt install build-essential

安裝成功后,執(zhí)行以下命令,確定安裝成功

gcc --version

安裝結(jié)果


image.png

SSL安裝/升級(jí)

步驟一

wget下載openssl到本地

$ wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz

步驟二

解壓openssl

tar zxvf openssl-1.1.1g.tar.gz

步驟三

cd到openssl-1.1.1g目錄,配置openssl的安裝目錄

./config --prefix=/home/username/openssl --openssldir=/home/username/openssl no-ssl2

#/home/username參數(shù)根據(jù)用戶修改
#如root用戶:/home/username=/root
#qa用戶:/home/username=/home/qa

步驟四

執(zhí)行make,完成后執(zhí)行make test

步驟五

cd到根目錄,創(chuàng)建/編輯 .bash_profile

export PATH=$HOME/openssl/bin:$PATH export LD_LIBRARY_PATH=$HOME/openssl/lib

export LC_ALL="en_US.UTF-8"

export LDFLAGS="-L/home/username/openssl/lib -Wl,-rpath,/home/username/openssl/lib"

#$HOME:當(dāng)前的用戶根目錄
#/home/username:當(dāng)前用戶的根目錄,具體根據(jù)openssl安裝路徑進(jìn)行調(diào)整

步驟六

測(cè)試校驗(yàn)openssl安裝


image.png

安裝python3.7

  • 安裝openssl的原因是python3.7版本以后,對(duì)pip源進(jìn)行ssl校驗(yàn)
  • sudo apt-get install zlib1g-dev
  • sudo apt-get install libffi-dev

步驟一

選擇python對(duì)應(yīng)版本,版本選型https://www.python.org/downloads/source/

步驟二

登陸服務(wù)器,wget下載python壓縮包,并解壓

[server]$ cd ~ 
[server]$ mkdir tmp 
[server]$ cd tmp 
[server]$ wget http://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
[server]$ tar zxvf Python-3.7.0.tgz

步驟三

cd到Python-3.7.0的解壓文件夾中的Modules

[server]$ cd Python-3.7.0
[server]$ cd Modules

vim編輯Modules下的Setup或者Setup.dist,目的是指定SSL路徑(前面openssl安裝的路徑)

image.png

步驟四

cd切換到Python-3.7.0解壓文件夾中,執(zhí)行python安裝命令

[server]$ cd ..
[server]$ ./configure --prefix=/root/python-3.7.0
[server]$ make
[server]$ make install

#備注:--prefix=/root/python-3.7.0,python需要安裝的目錄

步驟五

指定了安裝的路徑,所以,在這里建立軟鏈

sudo ln -s /root/python3/bin/python3.7 /usr/bin/python3
sudo ln -s /root/python3/bin/pip3 /usr/bin/pip3

異常問(wèn)題

如果不成功,可能使python3已經(jīng)存在了,sudo rm python3 或者 換一個(gè)名字,比如python37

這個(gè)時(shí)候運(yùn)行pip3 時(shí)出現(xiàn)了問(wèn)題:
subprocess.CalledProcessError: Command '('lsb_release', '-a')' returned non-zero exit status 1.
解決:sudo rm /usr/bin/lsb_release

備注:

  • 為了讓不同租戶使用,將python3.7安裝在/usr/local/lib內(nèi)部
  • debain上安裝

安裝virtualenvwrapper

  • *nix:pip install virtualenvwrapper。
  • windows:pip install virtualenvwrapper-win。

virtualenvwrapper環(huán)境變量配置

cd到跟目錄,新建/更新.bash_profile文件

# virtualenv-wrappper path
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh

python3.7安裝mysqlclient異常

下載安裝default-libmysqlclient-dev
安裝失?。?/p>

image.png

解決方案:

#  更新apt的索引
apt update
# 查詢模塊
aptitude search mysqlclient
#輸出
p   default-libmysqlclient-dev              - MySQL database development files (metapackage)

# 下載
apt-get  install   default-libmysqlclient-dev

apt的源目錄在:/etc/apt/source.list

參考:
https://help.dreamhost.com/hc/en-us/articles/115000702772-Installing-a-custom-version-of-Python-3
https://cloud.tencent.com/developer/ask/41016

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容