[编译报错]ImportError: No module named _sqlite3解决办法

1. 问题描述:

在使用python进行代码编译时,提示下面报错:

复制代码
"/home/bspuser/BaseTools/Source/Python/Workspace/WorkspaceDatabase.py", line 18, in <module>
    import sqlite3
  File "/usr/local/lib/python2.7/sqlite3/__init__.py", line 24, in <module>
    from dbapi2 import *
  File "/usr/local/lib/python2.7/sqlite3/dbapi2.py", line 28, in <module>
    from _sqlite3 import *
ImportError: No module named _sqlite3

此报错阻塞了代码编译,通过上网检索后,发现网上也存在与作者遇到相同报错的报错案例,但是没有人找到解决办法,因此进行了反复的排查尝试,最终找到了下面解决办法。

2. 解决方法

2.1 确定python版本,下载对应源码

报错日志显示python2.7,终端执行命令"python2.7 --version"查看具体版本,然后下载对应python源码:

2.2 编译官方完整python2.7源码

复制代码
cd  ~/Downloads/Python-2.7.18/
./configure
make
sudo make install

编译以及install完成后,重新编译代码报错不在出现

2.3 原因总结

出现报错的原因是:ubuntu系统默认带有python2.7,但此版本属于ubuntu系统默认的部分工具安装,系统默认并未安装sqlite3,导致python2.7已加载的配置中没有sqlite3的相关path配置,故需要重新对python2.7源码进行配置、编译、安装后才能调用到sqlite3。

相关推荐
FungLeo19 小时前
成为全栈·基础补充·数据库迁移与事务:数据结构怎样安全演进
mysql·postgresql·sqlite·数据一致性·数据库事务·数据库迁移·成为全栈
Risehuxyc4 天前
Microsoft.Data.Sqlite体验
数据库·sqlite
大维4 天前
DBX 实测:从 SQLite 查询到 MiniMax-M3 自然语言生成 SQL
数据库·sql·sqlite
deepseek234 天前
Agent任务中途断线,怎么避免重复执行?SQLite检查点实测
python·sqlite·任务调度·幂等性·ai agent
高调的涵涵5 天前
五个进程同时写 SQLite,谁在丢数据
sqlite
FungLeo5 天前
成为全栈·基础补充·数据库索引:为什么加了索引还是慢
mysql·postgresql·sqlite·sql优化·数据库索引·成为全栈
FungLeo8 天前
成为全栈·Go 后端篇·从 Node SQLite 到 PostgreSQL:把迁移做成独立交付物
postgresql·golang·sqlite·go·数据库迁移·成为全栈
xn713312 天前
本地 AI 知识库跨设备同步:SQLite FTS5、Embedding、Tombstone 和引用校验
人工智能·sqlite·ai编程
北方的银狐-Zero13 天前
OntoL 7.0|面向工业多智能体的语义本体套件,让异构系统真正 “看懂彼此”——OntoL的本体产品矩阵
人工智能·mysql·sqlite·1024程序员节·本体论·本体产品
CS创新实验室15 天前
改了模型,数据库为什么能自动跟上?——Django 迁移(migrations)的底层
数据库·django·sqlite