Can PyQt4和Qt4/C++;在Windows上和平共存?

Can PyQt4和Qt4/C++;在Windows上和平共存?,windows,qt4,pyqt,Windows,Qt4,Pyqt,我以前在我的Windows XP机器上安装过PyQt4,并成功地运行了所有程序。今晚,我下载了完整的QT4SDK(开源版本)并安装了它。在将BIN目录添加到我的系统环境路径之后,我可以构建几个我用C++编写的小程序。在不改变环境的情况下,我启动了python并尝试导入PyQt4.QtCore,但出现了一个错误,即无法加载DLL。我从我的环境路径中去掉了QT4 SDK bin目录的路径,现在可以运行我的Python PyQT4程序,但是我不能再构建我的C++程序了。 首先,我不确定为什么C++ S

我以前在我的Windows XP机器上安装过PyQt4,并成功地运行了所有程序。今晚,我下载了完整的QT4SDK(开源版本)并安装了它。在将BIN目录添加到我的系统环境路径之后,我可以构建几个我用C++编写的小程序。在不改变环境的情况下,我启动了python并尝试导入PyQt4.QtCore,但出现了一个错误,即无法加载DLL。我从我的环境路径中去掉了QT4 SDK bin目录的路径,现在可以运行我的Python PyQT4程序,但是我不能再构建我的C++程序了。 首先,我不确定为什么C++ SDK的存在会影响Python版本,因为它们在不同的目录中。我假设问题是,当python尝试加载PyQt4 DLL时,它认为它使用的是来自python路径的可执行文件,但由于SDK路径是第一个,因此实际调用的是(不兼容的)版本


有没有一种方法可以让这两个环境和平共处,这样我就可以构建和运行任何一种类型的程序?

正如您正确地指出的,问题往往是各种dll(QtCore4.dll、QtGui4.dll等)的版本不同。我倾向于发现问题发生在期望更新版本的人身上(因此,如果第二个安装了Qt SDK,但PyQt4位于第一个路径中,Qt SDK会抱怨),但听起来您遇到了不同的问题

我找到了两种解决方案:

  • 更改不同构建/运行环境的路径(不是很好)

  • 确保PyQt4和Qt/C++都处于同一个Qt版本,以便任一DLL都可以工作(通常更容易)


自从我第一次开始使用PyQt4和Qt/C++时就开始在一台计算机上安装它们(因此它们是等效的发行版本),我很少遇到它们共存的问题。

就是这样。我最终下载了Qt4,并使用其库和工具构建了PyQt4。现在大家都很高兴。