python加载sqlite3报错:No module named _sqlite3
环境为Ubuntu16.04 Apache2.4 Python2.7.13 django 1.8
今天部署apache+django,经过各种折腾,好不容易配置完了,发现错误Apache的日志里有一项
ImproperlyConfigured: Error loading either pysqlite2 or sqlite3 modules (tried in that order): No module named _sqlite3
于是打开Python 测试下能否导入sqlite3模块
>>> import sqlite3
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
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
结果是没有,我原来使用的是windows,sqlite3已经在安装包里了,但是源码安装的没有,是要依赖系统的库
我安装了如下两个:
sudo apt-get install libsqlite3-dev
sudo apt-get install sqlite3
PS(我是一直在试,找应该安装哪个,有一个就安一个,但是安完觉得可能有多余的,所以如果你也在安装的话,可以先安装第一个,然后再重新Python2.7,看make时是否提示_sqlite3 需要单独安装,如下的话还是不行,那么再装第二个)
Python build finished, but the necessary bits to build these modules were not found:
_bsddb _sqlite3 _tkinter
bsddb185 bz2 dbm
dl gdbm imageop
readline sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
上面为编译完提示不能一起安装,需要单独安装的提示:
提示:网上的博客很多,但是各自的情况不一样,都需要自己试试
对与sqlite3这个模块的做法有两类:
1下载sqlite3模块sqlite-autoconf-3190300.tar.gz源码,
手工配置,编译,安装,再配置python安装下的setup.py 我没行得通,还是提示无法安装_sqlite3这个提示!
2还有一种是 find / -name "_sqlite3*so" ;然后将此文件 cp到 安装目录下的 lib-dynload(一个动态库文件夹),但是我find的结果是
_sqlite3.x86_64-linux-gnu.so 而且将其改名拷贝过去还是不能用!
3 安装依赖包,系统不同,包名不同(靠谱)
centos下 是 yum install sqlite3-devel -y #搜索到这个的情况比较多,我也是基于此说法,才判断是装一个dev包就应该可以
ubuntu 下是 sudo apt-get install libsqlite3-dev
然后重新make重新安装python吧
如下提示中没有了_sqlite3,那么就没问题了,而且可以看下bulid目录下存在了_sqlite3.so!
Python build finished, but the necessary bits to build these modules were not found:
_bsddb _ssl _tkinter
bsddb185 bz2 dbm
dl gdbm imageop
readline sunaudiodev zlib
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
进一步验证,安装完成后
1. 方法一:先看下lib是否已经生成_sqlite3.so文件
还是在 /home/user/usr/python/python2.7/lib/python2.7/lib-dynload 下
发现了 _sqlite3.so 文件
2. 方法二:使用python 命令
>>> import sqlite3
不报错即可!
python加载sqlite3报错:No module named _sqlite3的更多相关文章
- python manage.py startapp app 时候报错No module named _sqlite3
python manage.py startapp app 报错如下: File "manage.py", line 10, in <module> execut ...
- C#拖曳控件加载,bll报错问题
C#拖曳控件加载,bll报错问题,加载时实例如化bll时加上一个判断 if (!(GetService(typeof(IDesignerHost)) != null || Sys ...
- mac 上python编译报错No module named MySQLdb
mac 上python编译报错No module named MySQLdb You installed python You did brew install mysql You did expor ...
- python踩坑系列之导入包时下划红线及报错“No module named”问题
python踩坑系列之导入包时下划红线及报错“No module named”问题 使用pycharm编写Python时,自己写了一个包(commontool),在同级另一个路径下(fileshand ...
- scrapy 运行时报错 No module named _sqlite3
新服务器上运行scrapy时报错 exceptions.ImportError: No module named _sqlite3 原因 由于新的环境缺少sqlite的依赖,编译python3是虽然不 ...
- npm加载包报错 :syscall access
$ npm install --save-dev babel-plugin-syntax-dynamic-import npm WARN checkPermissions Missing write ...
- C#调用Python,报错No module named os
C#调用Python 环境:Windows 8.1,已经安装Python2.7(C:\Python27),配置了环境变量. 已经安装VS2013,VS2017 1.安装IronPython 下载地址h ...
- 前端页面JS和CSS以及图片加载nginx报错:net::ERR_CONTENT_LENGTH_MISMATCH的解决与检查
首先检查nginx权限 具体可参考地址https://www.cnblogs.com/hooly/p/9951748.html 或者百度其他方法 还有种情况,之前是可以用的,突然出现这种加载报错的情况 ...
- Glide加载图片报错You must not call setTag() on a view Glide is targeting
报错信息为:You must not call setTag() on a view Glide is targeting 原因就是View使用setTag后导致Glide之前请求的标记被清除,强制转 ...
随机推荐
- C#,VB.NET如何将Word转换为PDF和Text
众所周知,Word是我们日常工作中常用的办公软件之一,有时出于某种需求我们需要将Word文档转换为PDF以及Text.那么如何以C#,VB.NET编程的方式来实现这一功能呢? 下面我将分开介绍如何运用 ...
- 集合框架Map、List、Set
map分为:HashMap,TreeMap,LinkedHashMap,WeakHashMap和IdentityHashMap. 在实际开发的过程中,最常用的是HashMap,下面介绍一下最常见的用法 ...
- salesforce零基础学习(七十一)级联表DML操作
曾经做项目没有考虑那么多,对于级联表操作都是正常的一步一步操作,没有考虑过失败情况,最近项目遇见了失败的情况,导致碰到了相应的情况,特此mark一下,免得后期继续踩坑. 需求如下:新建页面,页面中包含 ...
- linux系统资源限制
概述 拜读了小Y对ora-7445问题的解读,猛然惊醒发现自己对oracle运行在linux上的资源限制一直是朦朦胧胧的,以此文章督促自己深入了解. 1 limits.conf 和sysctl.con ...
- UML总结(对九种图的认识和如何使用Rational Rose 画图)
UML是一种建模语言,是系统建模的标准.我们之所以建模是因为大规模的系统设计时相当复杂的,当系统比较复杂时就会涉及到以下这几个问题: 开发人员如何与用户进行沟通来了解系统的需求? 开发人员之间如何沟通 ...
- Dockerfile 构建镜像 - 每天5分钟玩转容器技术(13)
Dockerfile 是一个文本文件,记录了镜像构建的所有步骤. 第一个 Dockerfile 用 Dockerfile 创建上节的 ubuntu-with-vi,其内容则为: 下面我们运行 dock ...
- POJ1850-Code 递推数学
题目链接:http://poj.org/problem?id=1850 题目大意: 按照字典序对升序排列组成的字母进行编号,给出一个长度不超过10的串,求出它的编号是多少?如果无法进行编号则输出0. ...
- Kafka权威指南——broker的常用配置
前面章节中的例子,用来作为单个节点的服务器示例是足够的,但是如果想要把它应用到生产环境,就远远不够了.在Kafka中有很多参数可以控制它的运行和工作.大部分的选项都可以忽略直接使用默认值就好,遇到一些 ...
- GreenDao 使用二
1.创建一个实体类 1 Entity note = schema.addEntity("Note"); 默认表名就是类名,也可以自定义表名 1.dao.setTableName(& ...
- vuex使用报错
1.vuex简介 最近在玩vuex,不得不说它是一个很强大的工具,它的目的就是把数据统一管理起来,方便各个组件之间来回调用 2.vuex引用报错 当我们去官网看API文档的时候,会发现官网是这么应用a ...