使用 PyQt5 时遇到了库版本不兼容的问题。以下是解决该问题的详细步骤:
问题描述
在链接时出现以下错误:
symbol version Qt_5_PRIVATE_API not defined in libQt5Gui.so.5
QT_5 not define in file libQt5Core.so.5 with link time reference
解决方案
-
卸载 PyQt5:
- 使用
pip uninstall pyqt5
命令卸载当前安装的 PyQt5。
- 使用
-
检查已安装的 PyQt5 相关包:
- 使用
pip list
查看已安装的 PyQt5 相关包,确保只保留PyQt5-sip
。
- 使用
-
重新安装兼容版本的 PyQt5:
- 根据
PyQt5-sip
的版本,重新安装兼容的 PyQt5 版本。例如,如果PyQt5-sip
版本是12.7.0
,可以尝试安装PyQt5==5.13.2
。
- 根据
示例命令
# 卸载当前的 PyQt5
pip uninstall pyqt5# 检查已安装的 PyQt5 相关包
pip list# 安装兼容版本的 PyQt5
pip install pyqt5==5.13.2
结论
通过卸载不兼容的 PyQt5 版本并重新安装与 PyQt5-sip
兼容的版本,可以解决链接时出现的符号未定义问题。确保环境中各个库的版本兼容性是解决此类问题的关键。