解决Linux安装Python相关包的_sqlite3.so及sqlite3相关问题

问题:

安装NLTK、gensim包时,以及import以上两个包时,显示No module named _sqlite3或找不到_sqlite3.so


1、首先,安装NLTK及gensim前要安装以下几个包:

pip install numpy

pip install scipy

pip install sqlite-devel

pip install sqlite3

pip isntall setuptools

pip install virtualenv

(并不是每一个都一定有用,但是由于遇到的问题太多,这些包都安装完成后才解决最终问题)

然后再安装

pip install nltk

pip install gensim

2、安装过程中如果出现有关sqlite3的相关问题,即需要手动安装sqlite3

(1)wget http://www.sqlite.org/sqlite-3.5.6.tar.gz

(2)tar -xzvf sqlite-3.5.6.tar.gz

(3)cd sqlite-3.5.6

(4)./ configure --prefix=/usr/local/sqlite3

(5)make && make install


而后找到自己python所用版本中setup.py位置,如找不到,可以先全局寻找

find / -name setup.py

找到类似..../PythonX.X/setup.py

以我自己的举例则是/home/ec2-user/Python3.5/setup.py

改动其中的内容

vim /home/ec2-user/Python3.5/setup.py

进入编辑器搜索“sqlite”字符串:

/sqlite

并做一下修改:

sqlite_inc_paths = [ '/usr/include',
                             '/usr/local/sqlite3/include', #增加该部分内容
                             '/usr/include/sqlite',
                             '/usr/include/sqlite3',
                             '/usr/local/include',
                             '/usr/local/include/sqlite',
保存退出

3、重新编译Python,就在目前的Python3.5文件夹下操作

./configure

make && make install

4、重新执行之前无法执行的pip install语句或import语句。问题就可以解决了

你可能感兴趣的:(python,linux)