‘ImportError: No module named '_sqlite3'’


安装好的python3.5,import sqlite3 遇到报错:‘ImportError: No module named '_sqlite3'’

尝试了网上诸多解决方法,均没有成功,这些失败的方法包括

(1)无效方法1

step1,yum install sqlite-devel

step2,进入python35安装文件夹,例如我的路径是/usr/local/src/Python3.5.3

           cd /usr/local/src/Python3.5.3

step3,重新编译安装

          ./configure

          make && make install

step4,上述行不通,找到python35安装文件,进入,vi setup.py 修改sqlite_inc_paths,.....(百度。。。)

(2)无效方法2

yum install sqlite3-devel

找不到该包

(3) 无效方法3

find 

/

cp 

结果依然不行

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

正确合理的做法如下:

(1)下载sqlite-autoconf-3230100.tar.gz,下载连接http://www.sqlite.org/2018/sqlite-autoconf-3230100.tar.gz

(2)tar xzf sqlite-autoconf-3230100.tar.gz

(3)我的路径是/root/sqlite-autoconf-3230100

cd /root/sqlite-autoconf-3230100

编译安装

./configure

make && make install

 

(4)在liunx命令行输入sqlite3,得到如下结果:

[root@YeMa sqlite-autoconf-3230100]# sqlite3
SQLite version 3.23.1 2018-04-10 17:39:29
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.

sqlite> 

  说明sqlite3编译安装成功,输入.quit退出sqlite3

(5)重新编译python35,才能识别sqlite3

找到Python35安装文件,如果忘记路安装路径,不要着急

a,回到根目录, cd ~/

b,find -name Python-3.5.3

我的输出结果是:

./usr/local/src/Python-3.5.3

./usr/local/src/Python-3.5.3/build/temp.linux-x86_64-3.5/usr/local/src/Python-3.5.3

/usr/local/src/Python-3.5.3

找到安装路径后,进入

/usr/local/src/Python-3.5.3

重新编译,安装,这里特别注意,红色部分

./configure --prefix=/usr/local/python3.5

make && make install

如何确定你的红色部分应该填什么呢?

python35安装文件位置/usr/local/src

cd /usr/local

例如我的结果得到:

bin  etc  games  include  lib  lib64  libexec  python3.5  sbin  share  src

编译安装成功后,进入python环境,输入import sqlite3,正常无报错即可

 

PS: 我中间倒腾的时候,修改了python3.5安装文件下setup.py,增加了红色圈中两行,没有验证是否起作用

如果以上方案行不通,试着修改setup.py


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM