python3.7安裝包
需要的安裝包
- Python3.7
wget https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tar.xz
- openssl安裝包
wget https://www.openssl.org/source/openssl-1.0.2t.tar.gz
after-install 腳本
install_py37.sh
#!/bin/sh
date_str=`date +%F_%T`
function install_openssl(){
if [ -d /usr/local/openssl ];then
mv /usr/local/openssl /usr/local/openssl-$date_str
fi
echo -e "\033[33m====> 安裝openssl\033[0m"
cd /usr/local
tar -xzvf openssl-1.0.2t.tar.gz
cd openssl-1.0.2t/
./config --prefix=/usr/local/openssl shared zlib
make && make install
# 加入系統環境變量
echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openssl/lib" >> /etc/profile
source /etc/profile
}
function install_py37(){
if [ -d /usr/local/python37 ];then
mv /usr/local/python37 /usr/local/python37-$date_str
fi
echo -e "\033[33m====> 安裝python3.7\033[0m"
cd /usr/local
tar -xJvf Python-3.7.5.tar.xz
cd Python-3.7.5/
./configure --prefix=/usr/local/python37 --with-openssl=/usr/local/openssl
make && make install
if [ -e /usr/local/bin/python3.7 ];then
/bin/rm /usr/bin/python3.7
fi
if [ -e /usr/bin/pip3.7 ];then
/bin/rm /usr/bin/pip3.7
fi
ln -s /usr/local/python37/bin/python3.7 /usr/bin/python3.7
ln -s /usr/local/python37/bin/pip3.7 /usr/bin/pip3.7
}
function clean(){
echo -e "\033[33m====> 清除文件\033[0m"
/bin/rm -rf /usr/local/{openssl-1.0.2t.tar.gz,Python-3.7.5.tar.xz}
/bin/rm -rf /usr/local/openssl-1.0.2t
/bin/rm -rf /usr/local/Python-3.7.5
}
echo -e "\033[33m====> 安裝依賴\033[0m"
yum install -y zlib zlib-dev openssl-devel sqlite-devel bzip2-devel libffi libffi-devel gcc gcc-c++
install_openssl
if [ $? == 0 ];then
install_py37
if [ $? == 0 ];then
echo -e "\033[32m安裝python3.7成功!\033[0m"
clean
exit 0
else
echo -e "\033[31m安裝python3.7失敗\033[0m"
exit 1
fi
else
echo -e "\033[31m安裝openssl失敗!\033[0m"
exit 1
fi
打包
fpm -t rpm -s dir -f -m test -n python3.7 -v 0.1 --after-install install_py37.sh openssl-1.0.2t.tar.gz=/usr/local/ Python-3.7.5.tar.xz=/usr/local/