[编译报错]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。

相关推荐
万事大吉CC1 天前
【4】深入剖析 Django 之 MTV:ORM 系统核心原理
数据库·python·oracle·django·sqlite
bucenggaibian1 天前
C语言超级全面的学习平台
c语言·sqlite·easylogger·pat练习·tencentos-tiny
星河耀银海2 天前
C语言与数据库交互:SQLite实战与数据持久化
c语言·数据库·sqlite·交互
万事大吉CC2 天前
【3】深入剖析 Django 之 MTV:路径引用与资源加载机制
数据库·django·sqlite
TheRouter3 天前
Agent Harness系列(三):记忆层的3种持久化架构——从SQLite到向量库
人工智能·架构·sqlite·llm·ai-native
Azhao11063 天前
手把手教你玩转排行榜激励:商城运营必备技能
sqlite
Azhao11063 天前
申请支付宝商户账号教程详解:从入门到实战全攻略
sqlite
key_3_feng4 天前
数据库Skill开发教程:从零构建SQLite应用
数据库·sqlite·skill
Azhao11066 天前
商城产品详情页的客服咨询在哪里设置详解:从入门到实战全攻略
sqlite
ggabb6 天前
战斗机器人的发展与战争伦理影响
sqlite