当前版本是ubuntu22.04,默认python版本是3.10.12 。
但是开发的程序基于3.13.7,没想到运行到3.10.12 都会报错。没办法,生产环境的3.10.12尽量不去动它,更不去卸载。反正我的main.py也是运行在虚拟环境当中,就手动另外安装一份python 3.13.7 吧。
但是,并没有static的3.13.7,那么就通过编译源码的方式来吧——其实一次操作下来,也没有想象中那么难——至少对于编译python解释起来说,很简单。
首先明确一个机制:如果原生环境本身是3.10.12那就只能创建3.10.12的虚拟环境;而我需要的是3.13.7的虚拟环境,那就本地环境必须有3.13.7,而至于它是否在系统的PATH里面则无所谓。
先下载并解压:
cd /wenxi/python_source
wget https://www.python.org/ftp/python/3.13.7/Python-3.13.7.tgz
tar -xzf Python-3.13.7.tgz
cd Python-3.13.7
然后设置自定义路径,编译安装到自定义路径(避免系统冲突),通过--prefix指定路径,无需root权限
./configure --prefix=$HOME/python3.13.7 # 例如安装到用户目录
make && make install
中间会等待很长一段时间,4、5分钟吧,然后就安装成功了。
验证安装:
$HOME/python3.13.7/bin/python3 --version
接下来就可以建立虚拟环境venv了:
$HOME/python3.13.7/bin/python3 -m venv /path/to/your/project/venv
```