在我的Fedora 10上,我成功地编译了python 2.7.9,当我运行python --version
时
我明白了
Python 2.7.9 (正确)
但是当我跑
sudo python --version
我明白了
Python 2.5.2
我之前安装了yum但是无法更新(旧的Fedora)。
当我跑的时候
su -c 'python --version'
我明白了
" Python 2.7.9"
这会导致需要新python的应用程序无法运行,而库只能安装到旧的python中。
例如: " playonlinux" 输出:
ImportError: No module named wxversion
sudo playonlinux
Looking for python2... 2.5.2 - skipped
有没有办法解决这个问题和/或将我所有的python 2.5库复制到我的2.7?
答案 0 :(得分:0)
运行"哪个python"作为普通用户和超级用户。
然后以常规用户和超级用户身份检查$ PATH变量(echo $ PATH)。
常规用户可能在不同于超级用户的位置进行搜索。如果是这种情况,您可能需要更改超级用户的PATH或覆盖超级用户运行的python可执行文件,并指向当前版本的链接。
请注意确保您所做的任何更改都可以撤消。还要在超级用户下查找任何环境变量,例如PYTHONPATH,它不会指向你的python库的错误版本!
此外,更新你的Fedora版本会很好,因为这些痛点只会继续累积。
我建议不要在版本之间复制包二进制文件,因为它们可能是针对不兼容的C库编译的。
最后,您应该查看virtualenv命令,它简化了为不同项目处理不同版本库的过程。