--------------------

修雨轩陈@cnblog

Python3.5 使用Sqlite3

python3.5 安装的时候会有很多可选参数,这些参数是默认不提供的,可是当我们想通过pip install、esay_install 的时候却发现无法安装; 在这种情况下,我们只能从新安装python.并在编译的时候添加到可选参数,

------------------------

1 安装Sqlite3

1.1 下载SQLTLE3:

https://www.sqlite.org/download.html

1.2 安装SQLITE 3

解压后进入sqlite3的目录下

进行编译:

$configure –prefix=<你的安装路径> ###这里我设置的是 /usr/local/sqlite

$make –j4

$sudo make install

安装成功之后会输出如下信息:

/usr/bin/mkdir -p '/usr/local/sqlite/bin'

/bin/sh ./libtool --mode=install /usr/bin/install -c sqlite3 '/usr/local/sqlite/bin'

libtool: install: /usr/bin/install -c sqlite3 /usr/local/sqlite/bin/sqlite3

/usr/bin/mkdir -p '/usr/local/sqlite/include'

/usr/bin/install -c -m 644 sqlite3.h sqlite3ext.h '/usr/local/sqlite/include'

/usr/bin/mkdir -p '/usr/local/sqlite/share/man/man1'

/usr/bin/install -c -m 644 sqlite3.1 '/usr/local/sqlite/share/man/man1'

/usr/bin/mkdir -p '/usr/local/sqlite/lib/pkgconfig'

/usr/bin/install -c -m 644 sqlite3.pc '/usr/local/sqlite/lib/pkgconfig'

make[1]: Leaving directory `/root/workspace/sqlite-autoconf-3170000'


2 重新安装python3

2.1 添加Sqlite3搜索路径

编辑python3.5.X里面的setup.py, 内容如下 (添加sqlite的搜索路径):

使用vim setup.py 打开,同时在命令模式下输入:

/sqlite_inc_paths #用于寻找该字段,如图所示:

在这句话中添加自己刚才安装的sqlite路径,由于我之前是在/usr/local/sqlite3下安装的,所以会添加:

/usr/local/sqlite3/include

/usr/local/sqlite3/include/sqlite3

如图所示:


2.2 安装python

./configure --enable-loadable-sqlite-extensions ## 设置可选项

PS: 在执行该命令之后, 发现最后输出:

这句是说,其实我们打开python的所有可选选项的时候使用 , 换句话说我们可以将所有python 的可选选项打开。

在Python安装目录中,使用一下两个命令:

$make –j4 ##这句话是对python 进行编译,如果自己机器上的CPU核数足够多,可以适当的增加-j后面的数字;

$sudo make install ## 安装编译后的python

3 验证

为了验证安装python 是否成功, 可以在/ 目录下查找_sqlite*.so

find / -name _sqlite*.so

继续验证:

Python3.5 使用Sqlite3的更多相关文章

  1. Python3数据库模块(sqlite3,SQLite3)

    一.sqlite命令 创建数据库:在控制台sqlite3 name .databases     查看数据库 .tables            查看表格名 databaseName .dump & ...

  2. python3连接使用sqlite3

    一直比较喜欢sqlite,业余爱好不需要大型数据库,原来在windows下最常用的就是access,使用很方便,但是linux下没法用,后 来从php+sqlite2开始使用,编程时间很少,代码量很小 ...

  3. Python3 简单封装 sqlite3 - SimpleToolSql

    #coding: utf-8 #Author:boxker #Mail:icjb@foxmail.com import sqlite3 import os class simpleToolSql(): ...

  4. 交叉编译Python-3.6.0到aarch64/aarch32 —— 支持sqlite3

    参考 https://datko.net/2013/05/10/cross-compiling-python-3-3-1-for-beaglebone-arm-angstrom/ 平台 主机: ubu ...

  5. OSX编译安装Python3及虚拟开发环境Virtualenv

    0X00.前言 因为工作原因,最近主要做Python开发,刚好电脑系统重装之后所有的东西都需要重新配置.此文主要记录OSX下通过源码编译安装Python3以及安装虚拟开发环境Virtualenv. 0 ...

  6. python杂记二

    1. 写文件可以直接使用print函数 file_name = open("file_name.txt","w") print("file conta ...

  7. 常用数据库2 sqlite及SQL注入

    知识内容: 1.sqlite数据库介绍 2.sqlite数据库操作 3.SQL注入 一.sqlite数据库介绍 1.sqlite数据库 sqlite数据库:轻量级的数据库,一般开发中使用sqlite数 ...

  8. LD_PRELOAD的妙用,让python支持自己编译的Sqlite

    LD_PRELOAD的妙用,让python支持自己编译的Sqlite LD_PRELOAD=/usr/local/sqlite/lib/libsqlite3.so.0 python3 -c " ...

  9. python-learning-第二季-数据库编程

    https://www.bjsxt.com/down/8468.html 代码实现: #coding:utf- #导入模块 import sqlite3 #创建connect连接 con = sqli ...

随机推荐

  1. rest-assured之Schema validation(包括JSON Schema validation及Xml Schema validation)

    rest-assured从2.1.0版本开始支持  Schema 验证,包括JSON Schema validation及Xml Schema validation.我们之前断言响应体都是一个一个字段 ...

  2. 初级算法49题 — LeetCode(20181122 - )

    Array: Single Number class Solution { public int singleNumber(int[] nums) { if (nums == null || nums ...

  3. 剑指offer——面试题25:合并两个 排序的链表

    自己答案: ListNode* MergeTwoSortedList(ListNode* pHead1,ListNode* pHead2) { if(pHead1==nullptr&& ...

  4. MonoGame2D - MonoGame的2D威力加强版

    简介MonoGame2D 是一款基于MonoGame的扩展工具包,对MonoGame的2D开发方面进行了扩展,主要增加了精灵,字体,地图,组件,GUI等游戏开发中的一些基本元素,以更方便快捷地进行2D ...

  5. Python学习 day14

    一.生成器函数进阶 1.最后一个yield后的代码 先看示例: def generator(): print(123) yield 'a' print(456) yield 'b' print(789 ...

  6. layui 时间插件laydate ,取消回调

    背景:转型新公司不再是做前端展示H5之类的东西,主要业务是后台数据读取和插件搭建前端页面,接触的第一个老项目是layui制作的,由于业务需求,需要用到时间插件以下为时间插件的一些用法--------- ...

  7. unity 渲染第一步

    unity 不是将宇宙投影到水晶球里,而是:将整个 view frustum 投影成 一个 cube .------ <unity 渲染箴言> 观察一下,整个 view frustum 以 ...

  8. django notes 二:URL dispatcher

    一般在 settings.py 中会有一个  ROOT_URLCONF ,请求到来时 django 会从 ROOT_URLCONF 指向的文件中查找  urlpatterns 变量配置的路由. url ...

  9. 修改Tomcat使用的JVM内存大小

    我的服务器的配置: # OS specific support.  $var _must_ be set to either true or false. JAVA_OPTS="-Xms10 ...

  10. 8、在Shell脚本中使用函数

    学习目标Shell的函数 Shell程序也支持函数.函数能完成一特定的功能,可以重复调用这个函数.函数格式如下: 函数名() {     函数体 }   函数调用方式: 函数名 参数列表   实例:编 ...