目录
centos7下载安装Python(版本3.10.14)
(1)网页下载python压缩包,并解压缩
(2)编译安装
Python在make altinstall时,报错及解决
(3)将安装目录和可执行文件放入指定位置
补充:centos7下载安装openssl(版本1.1.1w)
【Linux】centos7系统默认安装的python版本是2.7.5。使用yum安装python3的版本是3.6.8。
想要更高版本,需去python官网下载。 Python官网:Python Source Releases | Python.org
centos7下载安装Python(版本3.10.14)
(1)网页下载python压缩包,并解压缩
# 创建目录,并切换到目录下
mkdir /opt/src && cd /opt/src# 网页下载python3.10
wget https://www.python.org/ftp/python/3.10.14/Python-3.10.14.tgz# 解压缩
tar -zxvf Python-3.10.14.tgz# 切换到Python目录下,并查看该目录下所有文件(有configure,需编译安装)
cd /opt/src/Python-3.10.14 && ls
(2)编译安装
- configure:配置编译参数,检查系统环境是否符合安装的条件。
- make:编译。make install:安装。make altinstall:安装(安装目录的bin目录下不会创建python软链接和手册相关信息)。
# 配置编译参数
./configure --prefix=/opt/python-3.10.14 --enable-optimizations# 编译安装(可能报错)
make && make altinstall
Python在make altinstall时,报错及解决
报错:
解决:
① 下载安装较高版本的openssl(详见【补充:下载安装openssl(版本1.1.1w)】)。
② 使用yum安装 libffi-devel 和 zlib、zlib-devel。
# 使用yum安装libffi-devel
yum install -y libffi-devel# 查看是否已安装libffi-devel
rpm -qa | grep libffi*# 使用yum安装zlib,zlib-devel
yum install -y zlib zlib-devel# 查看是否已安装zlib,zlib-devel
rpm -qa | grep zlib*
Python编译安装时的报错解决后,继续安装Python3.10:
# 切换到Python目录下,并查看该目录下所有文件
cd /opt/src/Python-3.10.14 && ls# 清除之前的编译安装
make clean# 重新配置编译参数
./configure --prefix=/opt/python-3.10.14 --enable-optimizations --with-openssl=/usr/local/openssl-1.1.1w --with-openssl-rpath=auto# 重新编译安装
make && make altinstall# 切换到python安装目录下,并查看该目录及bin目录下所有文件(bin目录下有python可执行文件)
cd /opt/python-3.10.14 && ls && ls bin
(3)将安装目录和可执行文件放入指定位置
/usr/bin | 存放各软件包的可执行文件 |
---|---|
/usr/local | 存放各软件包的的安装目录 |
# 查看指定位置下是否已有相关文件和目录
ll /usr/bin | grep python
ll /usr/local | grep python# 将新python的目录软链接到指定位置
ln -s /opt/python-3.10.14 /usr/local/python-3.10.14# 将新python可执行文件软链接到指定位置,软链接python3(不需要修改python软链接)
ln -s /opt/python-3.10.14/bin/python3.10 /usr/bin/python3# 将python包管理工具pip可执行文件软链接到指定位置(若已有软链接,先删除原来的再创建)
ln -s /opt/python-3.10.14/bin/pip3.10 /usr/bin/pip# 查看python3和pip版本
python3 --version
pip --version
若没有创建python3的软链接,而是直接修改python软链接,则系统查找python3时,会查不到python3,会提示"checking for python3... no",即使已安装成功,系统也会默认没有。
注:在升级glibc时,需要python3,若/usr/bin/python3不存在,则glibc编译安装时会报错。
补充:centos7下载安装openssl(版本1.1.1w)
openssl下载网址:[ 1.1.1 ] - /source/old/1.1.1/index.html
先查看openssl版本:
下载安装openssl(版本1.1.1w):
# 网页下载openssl-1.1.1W
wget https://www.openssl.org/source/old/1.1.1/openssl-1.1.1w.tar.gz# 解压缩到/opt/src目录下
tar -zxvf openssl-1.1.1w.tar.gz -C /opt/src# 切换到openssl目录下,并查看该目录下所有文件(有config,需编译安装)
cd /opt/src/openssl-1.1.1w && ls# 配置编译参数
./config --prefix=/opt/openssl-1.1.1w# 编译安装
make -j && make install# 切换到openssl安装目录下,并查看该目录及bin目录下所有文件(bin目录下有openssl可执行文件)
cd /opt/openssl-1.1.1w && ls && ls bin# 查看指定位置下是否已有相关文件和目录
ll /usr/bin | grep openssl
ll /usr/local | grep openssl# 将新openssl的目录软链接到指定位置
ln -s /opt/openssl-1.1.1w /usr/local/openssl-1.1.1w# 备份原来的openssl,将新openssl可执行文件复制到指定位置
mv /usr/bin/openssl /usr/bin/openssl-1.0.2
cp /opt/openssl-1.1.1w/bin/openssl /usr/bin# 查看openssl版本(可能报错,需将执行文件软链接到指定位置)
openssl version
查看openssl版本时,报错:(需将报错信息中的文件软链接到指定位置)
# 将报错信息中的文件软链接到指定位置
ln -s /opt/openssl-1.1.1w/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /opt/openssl-1.1.1w/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1# 重新查看openssl版本
openssl version