【问题标题】:Can PyQt4 and Qt4/C++ co-exist peacefully on Windows?PyQt4 和 Qt4/C++ 能否在 Windows 上和平共处?
【发布时间】:2011-05-22 14:18:30
【问题描述】:

我之前在我的 Windows XP 机器上安装了 PyQt4,并且成功地运行了所有东西。今天晚上,我下载了完整的 Qt4 SDK(开源版本)并安装了它。在将 bin 目录的路径添加到我的系统环境路径之后,我能够构建一些我用 C++ 编写的小程序。在不改变我的环境的情况下,我启动了 python 并尝试导入 PyQt4.QtCore 并得到一个无法加载 DLL 的错误。我从我的环境路径中删除了 Qt4 SDK bin 目录的路径,现在能够运行我的 python PyQt4 程序,但我无法再构建我的 C++ 程序。

首先,我不确定为什么 C++ SDK 的存在会影响 python 版本,因为它们位于不同的目录中。我认为问题是,当 python 尝试加载 PyQt4 DLL 时,它认为它使用了 python 路径中的可执行文件,但是,因为 SDK 路径是第一个,所以(不兼容的)版本是实际调用的。

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

【问题讨论】:

    标签: windows qt4 pyqt


    【解决方案1】:

    正如您正确建议的那样,问题往往是各种 DLL(QtCore4.dll、QtGui4.dll 等)的版本不同。我倾向于发现问题出现在期望更新版本的人身上(所以如果第二个安装 Qt SDK,但 PyQt4 首先在路径中,Qt SDK 会抱怨),但听起来你有另一个问题。

    我找到了两种解决方案:

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

    • 确保 PyQt4 和 Qt/C++ 使用相同的 Qt 版本,这样任何一个 DLL 都可以工作(通常更容易)。

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

    【讨论】:

    • 就是这样。我最终下载了 Qt4 并使用它的库和工具构建了 PyQt4。现在大家都很开心。
    猜你喜欢
    • 2012-07-24
    • 1970-01-01
    • 2010-09-29
    • 2023-03-25
    • 2011-04-22
    • 1970-01-01
    • 2016-07-13
    • 2012-01-24
    • 1970-01-01
    相关资源
    最近更新 更多