关于 ImportError: No module named _sqlite3 报错解决方法

本网站用的阿里云ECS,推荐大家用。自己搞个学习研究也不错

今天准备用Flask部署方案(ubuntu):Virtualenv+Supervisor+Nginx 部署应用。

结果在执行python manager db init时死活报错。ImportError: No module named _sqlite3

百度下发现sqlite3在python2.7时自带的。
python3需要自己安装。

于是

1、yum -y install sqlite-devel
2、cd  Python-3.5.2       (python源码安装文件解压后的文件夹)
3、./configure --enable-loadable-sqlite-extensions --prefix=/opt/Python352     (--prefix可加可不加)
4、 make && make install

安装好了。测试下python3 -c ‘import sqlite3’ 没问题。

但是在venv环境下居然还是报错。。再百度,又发现原来是我的python3安装了两个版本。刚重新编译时,安装了一个新版本。而venv引用的是老版本。

删除旧版本。
重新弄venv

virtualenv --no-site-packages venv
source  venv/bin/activate
python -c 'import sqlite3'

搞定。差点就放弃,不用venv了,还好最终搞定了。

 

flask推荐看书Flask Web开发 基于Python的Web应用开发实战

未经允许不得转载:演道网 » 关于 ImportError: No module named _sqlite3 报错解决方法

赞 (0)
分享到:更多 ()
已有 0 条评论 新浪微博