Centos7下原始碼安裝Python3 及shell 指令碼自動安裝Python3的教程
一、原始碼安裝
首先安裝開發工具包
yum groupinstall -y "Development tools"
安裝依賴軟體包
yum -y install gcc gcc-c++ zlib-devel bzip2-devel openssl-devel sqlite-devel readline-devel libffi-devel wget
上Python 官網 找原始碼包的下載地址
wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tar.xz -O /usr/local/Python-3.7.6.tar.xz
解壓安裝
tar -xf Python-3.7.6.tar.xz cd Python-3.7.6
進入目錄後,執行下面的命令
修改檔案 Python-3.7.6/Modules/Setup.dist, 去掉如下幾行的註釋
readline readline.c -lreadline -ltermcap SSL=/usr/local/ssl _ssl _ssl.c \ -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \ -L$(SSL)/lib -lssl -lcrypto
開始編譯安裝
./configure --enable-shared make -j 2 && make install # -j 當前主機的 cpu 核心數
–enable-shared 指定安裝共享庫,共享庫在使用其他需呼叫python的軟體時會用到,比如使用mod_wgsi 連線Apache與python時需要。
配置共享庫檔案
為所有使用者設定共享庫目錄
用 vi 編輯器開啟配置檔案 /etc/profile.d/python3_lib.sh (原來沒有 重新生成的 名字可以自定義,必須以.sh 結尾)
vi /etc/profile.d/python3_lib.sh 新增如下內容 # python3.7 共享庫目錄 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
編輯檔案 /etc/ld.so.conf.d/python3.conf,並且新增如下內容:
/usr/local/lib
儲存退出檔案後, 執行如下命令 載入配置資訊使其生效
ldconfig
執行如下命令,是環境變數生效
source /etc/profile
# 此條命令只能讓當前的 shell 環境下的環境變數生效,最好重啟機器
測試python3
$ python3 Python 3.7.6 (default,Dec 25 2019,03:22:21) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux Type "help","copyright","credits" or "license" for more information. >>> exit()
測試 pip3
![假如上面顯示的含有 python3.7 就沒問題了
二、 配置使用本地的源安裝第三方模組
阿里雲的伺服器不用如下配置 執行好上面就可以了 他會自動配置的
建立配置檔案
配置 pip3 使用本地源
mkdir ~/.pip vi ~/.pip/pip.conf
寫入如下內容:
[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
豆瓣源: https://pypi.douban.com/simple/
阿里源: https://mirrors.aliyun.com/pypi/simple
然後我們執行如下程式碼安裝軟體 如果可以那就沒有問題
pip3 install ipython
shell 指令碼自動安裝Python3
yum groupinstall -y "Development tools" #開發工具包 touch /mnt/inst_pyth.log positio_pyth=/mnt/inst_pyth.log echo "開始安裝依賴包-----" yum -y install gcc gcc-c++ zlib-devel bzip2-devel openssl-devel sqlite-devel readline-devel libffi-devel wget tar >> $positio_pyth #依賴包 rpm -q gcc gcc-c++ zlib-devel bzip2-devel openssl-devel sqlite-devel readline-devel libffi-devel wget tar >> $positio_pyth if [ $? -ne 0 ];then exit fi echo "開始下載python安裝包,請耐心等待------" wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tar.xz -O /usr/local/Python-3.7.6.tar.xz #下載安裝包 if [ $? -ne 0 ];then exit fi cd /usr/local/ tar xf Python-3.7.6.tar.xz >> $positio_pyth cd Python-3.7.6 sed -ri 's/^#(readline)/\1/' /usr/local/Python-3.7.6/Modules/Setup.dist sed -ri 's/^#(SSL=)/\1/' /usr/local/Python-3.7.6/Modules/Setup.dist sed -ri 's/^#(_ssl)/\1/' /usr/local/Python-3.7.6/Modules/Setup.dist sed -ri 's/^#([ \t]*-DUSE)/\1/' /usr/local/Python-3.7.6/Modules/Setup.dist sed -ri 's/^#([ \t]*-L\$\(SSL\))/\1/' /usr/local/Python-3.7.6/Modules/Setup.dist # 到配置檔案裡開啟這幾行的註釋 ./configure --enable-sharde a=`cat /proc/cpuinfo|awk '/cpu cores/ {print $NF}'` make -j $a && make install >> $positio_pyth #j 指定cpu核數 touch /etc/profile.d/python3_lib.sh echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib" > /etc/profile.d/python3_lib.sh touch /etc/ld.so.conf.d/python3.conf echo "/usr/local/lib" > /etc/ld.so.conf.d/python3.conf ldconfig #使新增的內容生效 source /etc/profile #生效環境變數 pip3 -V if [ $? -eq 0 ];then echo "安裝成功" else echo "安裝失敗" fi
到此這篇關於Centos7下原始碼安裝Python3 shell 指令碼自動安裝Python3的文章就介紹到這了,更多相關Centos7安裝Python3 內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!