一.背景介绍

虚拟机的liunx系统CentOS7自带了python2.7.5,为使用方便需要换成最新的版本3.10.4

二.安装方法

1.安装升级GCC

yum install -y gcc* openssl openssl-devel ncurses-devel.x86_64  bzip2-devel sqlite-devel  zlib python-devel mysql-devel openldap-devel

2.下载python安装包

wget https://www.python.org/ftp/python/3.10.4/Python-3.10.4.tar.xz

3.解压

tar xvf Python-3.10.4.tar.xz

4.编译安装

cd Python-3.10.4
mkdir -p /usr/local/python3
./configure --prefix=/usr/local/python3
make && make install

5.将老版本python更换

mv /usr/bin/python /usr/bin/python2.7.5

6.更换默认python

ln -s /usr/local/python3/bin/python3 /usr/bin/python
ln -s /usr/local/python3/bin/pip3.10 /usr/bin/pip

7.修改 yum以及urlgrabber-ext-down中的python

将#!/usr/bin/python改为 #!/usr/bin/python2.7.5
vim /usr/bin/yum
vim /usr/libexec/urlgrabber-ext-down
PS:python3.10.4是默认安装pip的,所以不需要另行安装setuptools和pip.
 再次查看python版本已经升级:
 8.发现pip下载时候报错

解决方案1:pip设置后重装python(并未解决)

cd Python-3.10.4
进入目录下,依次执行以下3条命令
./configure –with-ssl
make
sudo make install

解决方案2:升级openssl版本并编译安装(解决)

#1.下载openssl

wget https://www.openssl.org/source/openssl-1.1.1o.tar.gz --no-check-certificate
tar zxvf openssl-1.1.1o.tar.gz
cd openssl-1.1.1o.tar.gz

# 2.编译安装

./config --prefix=/usr/local/openssl no-zlib #不需要zlib

make

make install

# 3.备份原配置

mv /usr/bin/openssl /usr/bin/openssl.bak

mv /usr/include/openssl/ /usr/include/openssl.bak

# 4.新版配置
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/local/lib64/libssl.so
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

# 5.修改系统配置
## 写入openssl库文件的搜索路径
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
## 使修改后的/etc/ld.so.conf生效
ldconfig -v
# 6.查看openssl版本
openssl version
#7 此时重新安装python

cd Python-3.10.4

./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl

make

make install

#8.此时pip命令安装时报需要升级,升级

/usr/local/python3/bin/python3.10 -m pip install --upgrade pip

#9.升级pip完成后下载成功

liunx上升级python2至python3的更多相关文章

  1. 装python package 时,conda提示会升级python2到python3,那可能是你的windows不支持py2env下的此包。

    装python package 时,conda提示会升级python2到python3, 那可能是你的windows不支持py2env下的此包.比如:win 下,tensorflow就不支持py2的环 ...

  2. 升级python2至python3解决依赖关系

    1.最小化安装centos7,在升级python3的时候会出现很多包未安装,为解决依赖关系: yum -y install gcc gcc-c++ zlib zlib-devel libffi-dev ...

  3. windows上安装python2和python3虚拟环境

    一.windows上安装 1.安装python 分别安装了Python2和Python3 python3.7默认安装目录 C:\Users\Administrator\AppData\Local\Pr ...

  4. 如何在Mac上切换python2和python3以及下载安装包 & 在Mac上如何查找系统自带python2.7的路径

    电脑:系统是Mac OS  系统自带python2.7  自己下载安装了python3.6 问题:一开始我想在终端下执行python2的相关代码   例如 python kNN.py (kNN.py这 ...

  5. [linux]centos7.4上升级python2版本到python3.6.5 【安装双版本,默认python3】

    版本声明 centos7.4 前言:linux上的python默认是版本2的,之前学django项目用的是3的版本 所以得升级下版本~ 1.下载python3.6.5 cd /usr/local/ w ...

  6. Centos6.6升级python2到python3

    系统更新部分: 一.由于系统原有的源无法连接,需要更新为新的源.起初,首选163的源,但是由于更改源以后,无法使用yum等问题,所以直接使用上海交通大学提供的源. 修改前,将原来/etc/yum.re ...

  7. 用启动器py成功解决python2和python3同时共存且同时运行的问题

    缘起:之前一直用PHP来开发微信公众号后台,最近正在学习python,而且看到微信官方也把公众号后台的示例代码换成了python的,但是示例中用的web.py需要用到python2,而我自己的电脑上装 ...

  8. windows XP上实现python2.7.5和python3.4.3共存

    windows XP上实现python2.7.5和python3.4.3共存过程记录: 1. 首先安装python2.7.5和python3.4.3,两个版本安装顺序不分前后; 2. 检查系统环境变量 ...

  9. 在同一台电脑上同时安装Python2和Python3

    目前Python的两个版本Python2和Python3同时存在,且这两个版本同时在更新与维护. 到底是选择Python2还是选择Python3,取决于当前要使用的库.框架支持哪个版本. 例如:HTM ...

  10. Python3: Windows系统上同时安装Python2和Python3

    Python3: Windows系统上同时安装Python2和Python3 为什么要同时安装Python2和Python3环境呢? 因为一些库只支持Python2或者Python3; 在同一台电脑上 ...

随机推荐

  1. [CF1854D] Michael and Hotel

    题目描述 Michael and Brian are stuck in a hotel with $ n $ rooms, numbered from $ 1 $ to $ n $ , and nee ...

  2. [ABC264F] Monochromatic Path

    Problem Statement We have a grid with $H$ rows and $W$ columns. Each square is painted either white ...

  3. spring报错-Caused by: java.lang.IllegalArgumentException: Unsupported class file major version 63

    这个错误原因是因为JDK版本过高,改一下版本就行了 把里面的19改成8 这样就行了

  4. DataGrip给DateTime类型字段赋值当前系统默认时间

    CURRENT_TIMESTAMP alter table 表名 modify column update_time DATETIME NULL DEFAULT CURRENT_TIMESTAMP O ...

  5. Scrapy-settings.py常规配置

    # Scrapy settings for scrapy_demo project # # For simplicity, this file contains only settings consi ...

  6. Vue学习笔记-生命周期

    整体页面代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  7. linux rz/sz 拖动文件上传

    不需要第三方上传文件直接 rz上传 拖动.以及 sz下载文件 多舒服 那么 他来了 安装与使用 yum安装 yum -y install lrzsz 使用上传文件,执行命令rz,会跳出文件选择窗口,选 ...

  8. 2023.2 IDEA安装激活教程

    1.下载安装IntelliJ IDEA 先去官网下载,我这里下载的是最新版本的2023.2,测试过2023最新版本以及2022版本以上的版本没问题. 安装然后打开 提示要输入激活码,先关闭应用,等下再 ...

  9. SQL注入Fuzzing字典

    需要的自取 ' " # - -- ' -- --'; ' ; = ' = ; = -- \x23 \x27 \x3D \x3B' \x3D \x27 \x27\x4F\x52 SELECT ...

  10. 一个小巧、快速、轻量级的 .NET NoSQL 嵌入式数据库

    前言 今天给大家分享一个小巧.快速.轻量级的 .NET NoSQL 嵌入式数据库:LiteDB.本篇文章主要是介绍LiteDB和在.NET中如何使用. LiteDB介绍 LiteDB 是一个小巧.快速 ...