我有一个使用QT5
的python应用程序。
我使用pyinstaller
为此应用生成二进制文件(以便捆绑所有依赖项)。此应用程序是基于Centos6.8
泊坞窗实例(出于兼容性原因)构建的,其中包含GLIBC
QT5
libQt5Dbus.so.5
。
当我运行应用程序时,它失败,捆绑的dbus_connection_can_send_type
没有符号symbol lookup error: /tmp/_MEIyxSbsB/libQt5DBus.so.5: undefined symbol: dbus_connection_can_send_type
:
nm -D /path/to/libQt5Dbus.so.5
当我在Centos6.8
泊坞广告实例上dbus_connection_can_send_type
时,我不会显示我需要的符号(libQt5Dbus.so.5
)。
如何在libQt5Dbus.so.5
中找到符号?
编辑:
我发现我系统中的dbus_connection_can_send_type
库之一实际上有libQt5Dbus.so.5
符号。我已将所有__init__
库替换为具有该符号的库,但仍然会收到错误。
答案 0 :(得分:0)
我遇到的问题是QT5要求的最低GLIBC
(GLIBC 14
)没有定义符号dbus_connection_can_send_type
(等等)。
将其升级为GLIBC 17
会使其再次发挥作用。