一、源码安装
1. 安装依赖软件包
[root@qfedu.com ~]# yum groupinstall "Development Tools"
[root@qfedu.com ~]# yum -y install gcc gcc-c++ make zlib-devel bzip2-devel openssl-devel sqlite-devel readline-devel libffi-devel wget
2. 下载源码包
可以直接点击下载,也可以右键 选择复制链接地址。
[root@qfedu.com ~]# wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tar.xz
3. 解压安装
[root@qfedu.com ~]# tar -xf Python-3.7.6.tar.xz
[root@qfedu.com ~]# cd Python-3.7.6
4. 修改配置信息
可以选择如下两种方式之一
4.1 方式一:直接使用 vi 修改
修改文件 Python-3.7.6/Modules/Setup.dist
, 去掉如下几行的注释 :
如果是 3.8.x 文件是 Setup
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
4.2 方式二:在 shell
命令提示符下执行如下命令:
sed -ri 's/^#readline/readline/' Modules/Setup.dist
sed -ri 's/^#(SSL=)/\1/' Modules/Setup.dist
sed -ri 's/^#(_ssl)/\1/' Modules/Setup.dist
sed -ri 's/^#([\t]*-DUSE)/\1/' Modules/Setup.dist
sed -ri 's/^#([\t]*-L\$\(SSL\))/\1/' Modules/Setup.dist
5. 开始编译安装
[root@qfedu.com Python-3.7.6]# ./configure --enable-shared
[root@qfedu.com Python-3.7.6]# make -j 2 && make install
# -j 当前主机的 cpu 核心数
–enable-shared 指定安装共享库,共享库在使用其他需调用python的软件时会用到,比如使用
mod_wgsi
连接Apache与python时需要。
二、 配置环境
执行如下命令
[root@qfedu.com ~]# file="/etc/profile.d/python3_lib.sh"
[root@qfedu.com ~]# echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib' >$file
[root@qfedu.com ~]# path="/usr/local/lib/"
[root@qfedu.com ~]# file2="/etc/ld.so.conf.d/python3.conf"
[root@qfedu.com ~]# echo $path > $file2
接下来,执行如下命令使配置好的环境信息生效
[root@qfedu.com ~]# ldconfig
[root@qfedu.com ~]# source /etc/profile
三、 测试安装
1. 测试 python3
[root@qfedu.com ~]# python3 -V
Python 3.7.6
[root@qfedu.com ~]#
假如上面显示的含有 Python3.7.6 就没问题了
2. 测试 pip3
[root@qfedu.com ~]# pip3 -V
pip 20.0.2 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
输出的信息中的目录
/usr/local/lib/python3.7/site-packages/
是用于存放 安装的第三方模块的
四、 配置使用本地的源安装第三方模块
- 在当前用户的家目录下创建一个隐藏的目录
.pip
[root@qfedu.com ~]# mkdir ~/.pip
- 执行如下命令,以便写入国内的源:
[root@qfedu.com ~]# echo '[global]' >> ~/.pip/pip.conf
[root@qfedu.com ~]# c1="index-url=https://mirrors.aliyun.com/pypi/simple"
[root@qfedu.com ~]# echo "${c1}" >> ~/.pip/pip.conf
豆瓣源:
https://pypi.douban.com/simple/
阿里源:https://mirrors.aliyun.com/pypi/simple
- 测试配置正确行
可以安装一个增强版的解释器 ipython
用于测试后面也会用的这个模块
[root@qfedu.com ~]# pip3 install ipython