安装zlib的过程(Compression requires the (missing) zlib module)(Python2.6升级为2.7出现的问题)
觉得有必要把解决问题的过程写下来
1,因为要安装flask,所以安装pip,所以安装setuptools,所以安装zlib。(具体过程http://www.cnblogs.com/aiyr/p/7260838.html 这个链接中有安装zlib,zlib-devel,耐心找找)
2,之后通过 #rpm -qa | grep zlib查看 发现zlib已经安装成功,可是在安装setuptools的时候还是报错
这不坑爹么。
3,于是去stackoverflow(百度都百烂了都没百出来),直接关键字setuptools zlib。其中一条答案是说可以试试能否在Python中import了,下图
虽然没解决问题,可是提供了一种解决问题方法。
4,沿着Stack Overflow中小哥的做法 我import了一把,果然,没有zlib
一急之下,把我知道的安装Python2.7版本的文件都删了。结果如下:
5,检查/usr/bin中的文件 其中在python
其中python,python2是我删除的文件所导致的,键入python是会报错的,因为没文件了。键入python2.6出现>>>这样的Python环境,而在这个环境下import zlib是不报错的。说明肯定刚才我们的2.7版本还没有完全'继承'python2.6所有的模块。。这个好像可以这么百度“linux下python sys.path永久添加自己的模块路径”好像是叫这个啊。我刚找到问题所在,不确定怎么称呼这个原因,但肯定是升级的问题了。
6,因为把2.7删了,我也不想再安装2.7了(伤心了),只想让我的2.6恢复战力。下面一步就是让/usr/bin中python的指向是python2.6。
7,想尽办法想把python指向python2.6,结果我现在的功力搜不到。只是百度搜索了“手动修改Python默认版本”,里面有这样的操作
mv /usr/bin/python /usr/bin/python2.6 //对系统默认版本python进行操作 摘除python指向路径操作(我个人理解,因为在执行完这一步之后我看usr/bin/中找不到python了) ln -s /usr/local/bin/python2.7 /usr/bin/python //注意第一个路径是新安装的python版本路径,而第二个路径是系统默认路径
上面的这个意思是 把python由原来的2.6 指向为2.7(我个人理解)
通过这两行,我寻思着那我也这么操作呗,无非两行shell嘛。结果,由于我之前把python2.7文件夹删掉了的缘故,写这两句shell的时候报错了。说找不着这个dictionary(这个单词我还得百度,汗...),于是,我就又重新安装了一次Python2.7。反正有现成的安装包。
8,重新安装python2.7(http://www.cnblogs.com/aiyr/p/7295603.html)
9,果然,安装后进入/usr/bin查看python没有那个红色一闪一闪的那玩意了(那代表文件找不到)
10,那好,这我就转移ln指向呗。参考第7步shell代码
11,经过上一步操作,我把版本又降成python2.6的了。。。
好了,说明在python2.6下 是有zlib的。再一次说明是升版本导致的我们本文开头的错误。
后记:其实到最后我也没有说出怎么能在python2.7版本下使用python2.6版本下的module,不过我感觉这是个小问题了,也许只是几句shell的事。重要的还是了解了一些在我看来比较深入的知识吧。培养了我自己去官网找包的好传统(手动捂脸吧....)ok,吃晚饭去。