【Linux】centos7下载安装Python3.10,下载安装openssl1.1.1

2024-05-24 13:52

本文主要是介绍【Linux】centos7下载安装Python3.10,下载安装openssl1.1.1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

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

这篇关于【Linux】centos7下载安装Python3.10,下载安装openssl1.1.1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/998596

相关文章

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

Linux命令之firewalld的用法

《Linux命令之firewalld的用法》:本文主要介绍Linux命令之firewalld的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux命令之firewalld1、程序包2、启动firewalld3、配置文件4、firewalld规则定义的九大

Linux之计划任务和调度命令at/cron详解

《Linux之计划任务和调度命令at/cron详解》:本文主要介绍Linux之计划任务和调度命令at/cron的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux计划任务和调度命令at/cron一、计划任务二、命令{at}介绍三、命令语法及功能 :at

Linux下如何使用C++获取硬件信息

《Linux下如何使用C++获取硬件信息》这篇文章主要为大家详细介绍了如何使用C++实现获取CPU,主板,磁盘,BIOS信息等硬件信息,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录方法获取CPU信息:读取"/proc/cpuinfo"文件获取磁盘信息:读取"/proc/diskstats"文

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

kali linux 无法登录root的问题及解决方法

《kalilinux无法登录root的问题及解决方法》:本文主要介绍kalilinux无法登录root的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录kali linux 无法登录root1、问题描述1.1、本地登录root1.2、ssh远程登录root2、

Linux ls命令操作详解

《Linuxls命令操作详解》通过ls命令,我们可以查看指定目录下的文件和子目录,并结合不同的选项获取详细的文件信息,如权限、大小、修改时间等,:本文主要介绍Linuxls命令详解,需要的朋友可... 目录1. 命令简介2. 命令的基本语法和用法2.1 语法格式2.2 使用示例2.2.1 列出当前目录下的文

Linux中的计划任务(crontab)使用方式

《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro