Centos7下源码安装Python3 及shell 脚本自动安装Python3的教程
作者:wx912820
一、源码安装
首先安装开发工具包
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 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!