You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt5编译报错:QTextBrowser类无setMarkdown成员求协助

问题解决:Qt 5.14.2编译报错QTextBrowser无setMarkdown方法

报错原因

QTextBrowser::setMarkdown()是Qt 5.15及以上版本才新增的API,你当前使用的Qt 5.14.2不支持这个方法,导致编译失败。

两种解决方案

方案1:升级Qt版本到5.15+

  • 下载安装Qt 5.15或更高版本(推荐选择LTS稳定版本如5.15.x)
  • 重新配置项目构建环境:
    • 执行qmake -v确认当前环境指向新版本Qt
    • 若用CMake构建,需指定新版本Qt的路径,示例命令:
      cmake .. -DCMAKE_PREFIX_PATH=/opt/qt515/lib/cmake
      
  • 重新执行make编译项目

方案2:修改代码兼容Qt 5.14.2

直接替换setMarkdown调用为Qt 5.14支持的写法,修改AboutDialog.cc第92行:
原代码:

changelog.setMarkdown(in_changelog.readAll());

替换为:

QTextDocument* doc = new QTextDocument(&changelog);
doc->setMarkdown(in_changelog.readAll());
changelog.setDocument(doc);

解释:QTextDocument::setMarkdown()在Qt 5.14已存在,先给文档设置markdown内容,再绑定到QTextBrowser上可实现相同效果;同时将changelog设为文档父对象,能自动管理内存避免泄漏。

内容的提问来源于stack exchange,提问作者Pankaj Garg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 22:03:31