环境为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的更多相关文章

  1. python manage.py startapp app 时候报错No module named _sqlite3

    python manage.py startapp app 报错如下: File "manage.py", line 10, in <module>    execut ...

  2. C#拖曳控件加载,bll报错问题

    C#拖曳控件加载,bll报错问题,加载时实例如化bll时加上一个判断 if (!(GetService(typeof(IDesignerHost)) != null            || Sys ...

  3. mac 上python编译报错No module named MySQLdb

    mac 上python编译报错No module named MySQLdb You installed python You did brew install mysql You did expor ...

  4. python踩坑系列之导入包时下划红线及报错“No module named”问题

    python踩坑系列之导入包时下划红线及报错“No module named”问题 使用pycharm编写Python时,自己写了一个包(commontool),在同级另一个路径下(fileshand ...

  5. scrapy 运行时报错 No module named _sqlite3

    新服务器上运行scrapy时报错 exceptions.ImportError: No module named _sqlite3 原因 由于新的环境缺少sqlite的依赖,编译python3是虽然不 ...

  6. npm加载包报错 :syscall access

    $ npm install --save-dev babel-plugin-syntax-dynamic-import npm WARN checkPermissions Missing write ...

  7. C#调用Python,报错No module named os

    C#调用Python 环境:Windows 8.1,已经安装Python2.7(C:\Python27),配置了环境变量. 已经安装VS2013,VS2017 1.安装IronPython 下载地址h ...

  8. 前端页面JS和CSS以及图片加载nginx报错:net::ERR_CONTENT_LENGTH_MISMATCH的解决与检查

    首先检查nginx权限 具体可参考地址https://www.cnblogs.com/hooly/p/9951748.html 或者百度其他方法 还有种情况,之前是可以用的,突然出现这种加载报错的情况 ...

  9. 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之前请求的标记被清除,强制转 ...

随机推荐

  1. TagHelper的一些个人学习体会(发现了微软官方文档的一个错误)

    最近一直在学习.net core 上周六开始学习Taghelper的自定义,准备周日写个博客和大家分享一下学习体会,无奈周日去考科四了,回来之后就感冒了,现在还没好.可是我发现了微软官方文档的一个错误 ...

  2. HashMap 构造函数

    HashMap总共提供了三个构造函数 /** * Constructs an empty <tt>HashMap</tt> with the default initial c ...

  3. 随机抽样一致算法(Random sample consensus,RANSAC)

    作者:桂. 时间:2017-04-25  21:05:07 链接:http://www.cnblogs.com/xingshansi/p/6763668.html 前言 仍然是昨天的问题,别人问到最小 ...

  4. 【代码学习】PHP文件的上传和下载

    ===================== 文件上传和下载 ===================== 一.php.ini的配置信息 file_uploads = On /Off    是否允许文件上 ...

  5. Linux系统操作指令汇总

    1.系统配置 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIO ...

  6. Linux的kobject机制

    作者:Younger Liu 本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可. sysfs文件系统下的每个目录对应于一个kobj,kset是kobj的封装,内 ...

  7. Could not find a valid gem 'compass' (>= 0) in any repository compass安装失败解决方案

    安装完成ruby gem 之后,通过 gem install compass 安装compass~~ 出现如下报错 Could not find a valid gem 'compass' (> ...

  8. #使用parser获取图片信息,输出Python官网发布的会议时间、名称和地点。

    # !/usr/bin/env/Python3 # - * - coding: utf-8 - * - from html.parser import HTMLParser import urllib ...

  9. Oracle正则表达式之匹配网址

    利于正则表达式匹配出网址 --1 表准备create table test_regexp( object varchar2(50)); --2 数据准备 insert into test_regexp ...

  10. Oracle over函数学习

    sql over的作用及用法 RANK ( ) OVER ( [query_partition_clause] order_by_clause ) DENSE_RANK ( ) OVER ( [que ...