python版本升级到3.8以及安装虚拟环境

linux系统升级python版本看起来复杂,如果知道其中步骤也不会觉得很困难。下面记录在deepin系统 15.11和ubuntu16.04系统下将python从2.7升级到3.8过程

1|0升级python版本到3.8


1|1使用普通用户完成以下操作:


1|2更新源


sudo apt update

1|3下载必要软件


sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev curl libbz2-dev

注意:以 - 开头的标题可以选做

1|4-下载 sqlite3


如果不安装sqlite3,升级python3之后找不到sqlite包

wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz 解压: tar -xvzf sqlite-autoconf-3240000.tar.gz 进入目录: cd sqlite-autoconf-3240000/ 编译: /configure --prefix=/usr/local/sqlite 安装: make -j4&&sudo make install

1|5下载python源码包


curl -O https://mirrors.huaweicloud.com/python/3.8.7/

1|6解压


tar -xf Python-3.8.7.tar.xz cd Python-3.8.7

1|7-修改setup.py


进入python源码中,找到setup.py,修改 setup.py

查找" sqlite_inc_paths" 新增 '/usr/local/sqlite/include' '/usr/local/sqlite/include/sqlite3'

1|8编译生成make文件。


这里一定要带上编译参数--with-ssl,该参数是编译python是加入SSL,如果没有在使用pip3时会报错SSL有问题

./configure --with-ssl

1|9make


make

1|10安装


altinstall 的意思是不覆盖原来系统中的python版本。如果覆盖会出现终端打不开等一些问题。

sudo make altinstall

1|11-复制sqlite相关的库文件


find / -name cpython-37m-x86_64-linux-gnu.so cp /usr/local/lib/python3.8/lib-dynload/_sqlite3.cpython-37m-x86_64-linux-gnu.so /usr/local/lib/python3.8/lib-dynload/_sqlite3.so

1|12将默认python3替换成更新的


which python3.8 rm -rf /usr/bin/python3 sudo ln -s /usr/local/bin/python3.8 /usr/bin/python3

1|13将pip3更换成最新


这一步不同的系统会有不同。有些系统没有pip3,直接使用即可。

which pip3.8 rm -rf /usr/bin/pip3 sudo ln -s /usr/local/bin/pip3.8 /usr/bin/pip3

1|14报错 lsb_release 找不到


如果在使用python虚拟环境时报错 lsb_release 找不到

raise CalledProcessError(retcode, process.args, subprocess.CalledProcessError: Command '('lsb_release', '-a')' returned non-zero exit status 1.

全局搜索 lsb_release ,找到之后然后删除

2|0安装虚拟环境


安装两个虚拟环境的包,顺序不可乱

pip3 install virtualenv pip3 install virtualenvwrapper

配置环境变量
找到虚拟环境的管理脚本路径,配置环境变量需要

编辑文件 vim ~/.bashrc

find / -name virtualenvwrapper.sh >> /home/vagrant/.local/bin/virtualenvwrapper.sh

不同系统文件的位置不同,以实际为准

初始化环境变量,编辑文件~/.bashrc

export virtualenvwrapper_python=/usr/bin/python3 export workon_home=$home/.virtualenvs source /home/vagrant/.local/bin/virtualenvwrapper.sh
source ~/.bashrc

新建虚拟环境

mkvirtualenv -p python3 python3.8

进入虚拟环境

workon python3.8

__EOF__

本文作者goldsunshine
本文链接https://www.cnblogs.com/goldsunshine/p/12938654.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   金色旭光  阅读(14897)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示