ubuntu18.04安装python3.10.13

  1. 下载python包: https://www.python.org/downloads/
  2. 安装关联软件包: apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev
  3. 执行sudo ./configure --enable-optimizations 此命令是为了在编译 Python 时启用性能优化,以获得更好的运行性能。不过,启用编译优化会增加编译时间,因此在编译大型的 Python 项目时需要权衡时间和性能的考虑
    –enable-optimizations:这个选项告诉配置脚本启用编译优化。启用优化可以提高 Python 解释器的性能,但可能会导致编译过程更加耗时。
  4. 编译安装: make altinstall
    altinstall:这是 make 命令的一个目标,与普通的 make install 目标不同。make install 通常用于将 Python 安装为系统的默认 Python 版本,而 altinstall 用于将 Python 安装为一个另外的、可选的 Python 版本。
    通常情况下,make install 会覆盖系统默认的 Python 版本,这可能会导致系统中的其他应用程序受到影响。为了避免这种情况,altinstall 允许你将 Python 安装为一个独立的版本,通常会带有版本号,例如 python3.x,其中 x 是 Python 的次版本号。
    使用 sudo make altinstall 会将编译好的 Python 安装到系统中,但不会覆盖系统默认的 Python 版本,而是创建一个可选的 Python 版本,你可以在需要的时候显式使用这个版本。

错误:
遇到了:
ModuleNotFoundError: No module named '_sqlite3'
ModuleNotFoundError: No module named 'pysqlite2'
原因:
当使用 源码安装 Python(如 3.10)时,如果系统中 缺少 SQLite 开发库,Python 编译时就不会构建 sqlite3 模块。
解决办法:

  1. 安装系统依赖(关键)
    sudo apt update
    sudo apt install libsqlite3-dev
  2. 重新编译 Python(如果你是从源码安装的)
    假设你是从源码安装 Python 的(如解压 Python-3.10.x.tar.xz 并手动编译),那你必须重新编译一次 Python 才能生效:
cd ~/Python-3.10.XX  # 替换为你的源码目录
make clean
./configure --enable-optimizations
make -j$(nproc)
sudo make altinstall  # 不覆盖系统默认 python
重新编译后,sqlite3 模块就能正常使用了。
  1. 确认是否修复
    可以运行查看,不报错就说明修复了:
>>> import sqlite3
>>> sqlite3.sqlite_version```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值