PyQt5:版本 LIBDBUS_1_3 未在具有链接时间参考的文件 libdbus-1.so.3 中定义

问题描述 投票:0回答:1

我使用 python3,我正在尝试从 PyQt4 迁移到 PyQt5。我有以下代码:

from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

class MyMonitor(QWidget, mon_ui.Ui_monitor):
    def __init__(self, workdir, refresh, parent = None):
        QWidget.__init__(self, parent)
        self.setupUi(self)
        self.setupMembers(workdir, refresh)
        # More code ...

    # more methods

if __name__ == "__main__":
    opts = monGetOpts()
    sys.excepthook = monExceptionsHandler
    signal(SIGINT, monSignalsHandler)
    app = QApplication(sys.argv)
    style = QStyleFactory.create('windows')
    app.setStyle(style)
    MyMonitor = MyMonitor(opts['workdir'], opts['refresh'])
    MyMonitor.show()
    app.exec_()

出于某种原因,它在到达线路时失败

self.setupUi(self)

python3.6.3: relocation error: /usr/pkgs/python3/3.6.3/modules/r1/lib/python3.6/site-packages/PyQt5/Qt/plugins/platforms/../../lib/libQt5DBus.so.5: symbol dbus_message_get_allow_interactive_authorization, version LIBDBUS_1_3 not defined in file libdbus-1.so.3 with link time reference

我尝试用谷歌搜索此错误消息并找到了一些票证,但他们没有具体说明他们是如何解决的。有人看过吗?如何解决?如何调试?

python python-3.x pyqt5 pyqt4
1个回答
0
投票

我在 SLES12 上遇到了这个问题。一旦我使用 python 3.7 并将包版本限制为 pyqt5<5.12, it worked for me.

© www.soinside.com 2019 - 2024. All rights reserved.