执行make命令时遭遇libQt5WebKit.so.5相关依赖错误求助
执行make命令时链接错误求助
执行make命令时遭遇链接错误,部分错误信息如下:
/usr/bin/ld: warning: libicuuc.so.71, needed by /usr/lib/libQt5WebKit.so.5, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libicui18n.so.71, needed by /usr/lib/libQt5WebKit.so.5, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libicuuc.so.71, needed by /usr/lib/libQt5WebKit.so.5, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libicui18n.so.71, needed by /usr/lib/libQt5WebKit.so.5, not found (try using -rpath or -rpath-link) /usr/bin/ld: /usr/lib/libQt5WebKit.so.5: undefined reference to `ubrk_open_71' /usr/bin/ld: /usr/lib/libQt5WebKit.so.5: undefined reference to `ucnv_close_71' /usr/bin/ld: /usr/lib/libQt5WebKit.so.5: undefined reference to `udat_open_71' /usr/bin/ld: /usr/lib/libQt5WebKit.so.5: undefined reference to `ucol_setAttribute_71' /usr/bin/ld: /usr/lib/libQt5WebKit.so.5: undefined reference to `ucol_strcollIter_71' /usr/bin/ld: /usr/lib/libQt5WebKit.so.5: undefined reference to `ucnv_reset_71' /usr/bin/ld: /usr/lib/libQt5WebKit.so.5: undefined reference to `ucnv_setFromUCallBack_71'
错误截图:
Qmake和Qt版本截图:
解决建议
安装对应版本的ICU库:错误提示找不到的
libicuuc.so.71和libicui18n.so.71是ICU国际组件库的文件,根据系统发行版选择对应安装方式:- Debian/Ubuntu系:执行
sudo apt install libicu71 libicu-dev(若仓库无71版本,需添加第三方源或手动编译) - RHEL/CentOS系:执行
sudo dnf install libicu71 libicu-devel - 手动编译:从ICU官方渠道下载71.x版本源码,编译安装后确保库路径被系统识别
- Debian/Ubuntu系:执行
指定库路径给链接器:若已安装库但链接器无法找到,可在make时添加路径参数:
make LDFLAGS="-Wl,-rpath-link=/path/to/icu71/lib"或在项目
.pro文件中添加依赖配置,再重新执行qmake和make:LIBS += -L/path/to/icu71/lib -licuuc -licui18n匹配QtWebKit与ICU版本兼容性:Qt5WebKit依赖特定版本ICU,确保当前QtWebKit是针对ICU71编译的,或调整ICU库版本以适配QtWebKit的依赖要求
更新系统库缓存:安装库后执行
sudo ldconfig,让系统识别新安装的库文件
内容的提问来源于stack exchange,提问作者Prem
相关产品推荐
相关产品推荐

