[原创] 更新Ubuntu自带的python2.X版本 ImportError: No module named pip;ImportError: No module named _sqlite3

时间:2023-03-10 03:33:20
[原创] 更新Ubuntu自带的python2.X版本 ImportError: No module named pip;ImportError: No module named _sqlite3

Ubuntu14.04自带的Python2版本,是2.7.6的,想更新为最新的2.7.11,操作如下:

1、 从python官网下载2.7.11的source源码包 Python-2.7.11.tgz

2、 解压压缩包  tar -zvf Python-2.7.11.tgz

3、 cd Python-2.7.11

4、 ./configure

5、 make

6、 make -i install

说明: 这一步,很多博客或教程,给的都是make install ,我试了,报错 make: *** [libinstall] Error 1, 参考了 http://bugs.python.org/issue1669349,用 maike -i install 成功。

7、 make clean

8、 make distclean

9、 #备份老python mv /usr/bin/python /usr/bin/python2.7.6

  #建立软连接 ln -s /usr/local/bin/python2.7 /usr/bin/python

10、 至此,python版本已更新完成,但后续使用pip安装包的时候,出现新的异常: ImportError: No module named pip, google了很久,也执行了很多命令,然并卵,最后通过esay_install pip  重装了pip才得以解决。google到的hash -r 等等命令,不知道有没有起到具体作用。没有一步步截图保存。引以为戒,还是少折腾系统本身的环境为妙。可以通过virtualenv 以及 pyenv 在需要其他版本的目录下,创建虚拟环境。

11、 后续在需要用到sqlite的地方,再次出现新的异常: 文件"/usr/local/lib/python2.7/sqlite3/dbapi2.py", ImportError: No module named _sqlite3 。这是因为缺少 sqlite-devel的原因,centos 下运行“yum install sqlite-devel”, ubuntu下运行“sudo apt-get install libsqlite3-dev”。 然后重新执行 4~6步。

后记: 升级python版本后,过了几天,需要使用软件中心,发现无法打开软件中心了,不知道是不是升级版本的原因。