CentOS 6中为Python 2.7安装PyQt4及解决默认装到Python 2.6的问题
2. 已成功安装PyQt4,但默认在Python2.6环境下,如何部署到Python2.7环境中?
这种情况我在CentOS6上折腾过好几次,给你分享两种靠谱的解决办法:
方法一:直接复制模块文件(快速但需注意兼容性)
适合不想重新编译的场景,直接把Python2.6里的PyQt4模块复制到Python2.7的site-packages目录:
先找到Python2.6中PyQt4的安装路径:
python2.6 -c "import PyQt4, os; print(os.path.dirname(PyQt4.__file__))"一般输出是
/usr/lib/python2.6/site-packages/PyQt4找到Python2.7的site-packages路径:
python2.7 -c "import site; print(site.getsitepackages()[0])"通常是
/usr/lib/python2.7/site-packages复制PyQt4目录和依赖的sip模块:
sudo cp -r /usr/lib/python2.6/site-packages/PyQt4 /usr/lib/python2.7/site-packages/ sudo cp /usr/lib/python2.6/site-packages/sip* /usr/lib/python2.7/site-packages/验证:
python2.7 -c "import PyQt4; print('PyQt4 loaded successfully in Python2.7')"
方法二:重新编译指定Python2.7(更稳定推荐)
如果复制后出现兼容性报错,最好重新编译安装,确保完全适配Python2.7:
- 回到之前的PyQt4源码目录,如果已经删了就重新下载解压一遍
- 先清理之前的编译缓存:
make clean - 用Python2.7重新配置编译参数:
python2.7 configure.py --qmake /usr/bin/qmake-qt4 - 编译安装:
这次安装会直接把PyQt4放到Python2.7的site-packages目录里,不用再手动复制。make -j4 sudo make install
内容的提问来源于stack exchange,提问作者hexacool
相关产品推荐
相关产品推荐

