您的位置:首页 > 编程语言 > Python开发

ubuntu在使用pip安装python模块时的狗血错误

2015-06-05 09:18 821 查看
先上图

AttributeError: 'module' object has no attribute 'packaging'

这个错误实在是离谱,我前几天装python模块都好好,突然出现这个错误,折腾两天

最初以为是pip出了问题,因此升级pip,问题依然存在

随后重新安装pip,加各种升级,错误改变了,上图

这是什么原因,我百思不得其解,总之,依然无法用pip装模块,无意间我有个发现,现在的错误链接的python变成/usr/local/lib/python3.4/dist-packages/setuptools-17.0-py3.4.egg/setuptools/了,用的python3.4

因为我编程用的是python2.7,难道是版本不兼容问题,赶快测试一个其它模块geoip2,很顺利的安装完成,果然是版本不兼容问题,于是我查看了pip命令

我的pip出现了五个命令,可能因为前面各种升级,导致多装了一个版本,而pip默认是使用pip3.4,也就是python3.4,为了验证猜想,我查看了python库,pip list和pip 2.7 list,对比结果后一目了然,刚使用pip install geoip2装的geoip2库顺利安装,因为兼容python3.4,已经顺利安装并在python3.4的库中,而python2.7的库中美有此模块的出现,尝试使用pip2.7 install geoip2,错误依然存在,还是最初的错误

这是我总结错误的原因可能是:

我升级pip后,附带升级了setuptools,版本升级为setuptools-17.0-py3.4.egg,只兼容python3.4,导致我安装python2.7的模块时无法安装,于是我决定重装python2.7版本适用的python-setuptools,在ubuntu中运行命令

r# apt-get install python-setuptools

狗血,错误又出现了

没有办法,一定要解决,要不严重影响coding进度,卸载不兼容软件包

# apt-get purge python-pkg-resources

# apt-get autoremove

# apt-get clean

重新安装

# apt-get install python-setuptools

# dpkg -l | grep python-setuptools

ii  python-setuptools                                     3.3-1ubuntu1                                        all          Python Distutils Enhancements (setuptools compatibility)

很欣慰,终于成功了

安装刚才因为不兼容报错的模块

#pip2 install suds

终于成功了,问题就此解决,验证当时总结问题的正确性。

结束语:

Ubuntu中使用软件经常会因为失误的更新或者自动更新导致软件出现问题,解决起来确实棘手。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: