回帖:发现问题
把 Qt 6.3.2 的 QtWebEngine 放进 6.2.4 的源码里之后,生成的 QtWebEngine 的二进制标注的版本为 6.2.4
我不知道这是不是故意为之的(因为 Qt 6.2 LTS 使用了 Qt 6.3 的 QtWebEngine),不过我认为这问题值得报告给官方看一下。
Qt 5.15 系列没有这个问题。
以 macOS 举例,5.15 系列,带 QtWebEngine 5.15.10 生成的 QtWebEngine 的二进制的后缀是 5.15.10.dylib
而 6.2 系列,带 QtWebEngine 6.3.2 生成的 QtWebEngine 的二进制后缀是 6.2.4.dylib
~/JenkinsMacOS/workspace/Qt/Q5mx6nf/buildDir/Qt5.15.6-macOS-x86_64-AppleClang12.0.5-noFramework/lib Darwin
$ ls | grep '\.5\.15\.[[:digit:]]\{1,\}\.dylib'
libQt5Core.5.15.6.dylib
libQt5Gui.5.15.6.dylib
libQt5Network.5.15.6.dylib
...
libQt5WebChannel.5.15.6.dylib
libQt5WebEngine.5.15.10.dylib
libQt5WebEngineCore.5.15.10.dylib
libQt5WebEngineWidgets.5.15.10.dylib
libQt5WebSockets.5.15.6.dylib
libQt5WebView.5.15.6.dylib
libQt5Widgets.5.15.6.dylib
libQt5Xml.5.15.6.dylib
~/JenkinsMacOS/workspace/Qt/q6_2ma6nf/buildDir/Qt6.2.4-macOS-arm64_v8a-AppleClang14.0.0-noFramework/lib Darwin
$ ls | grep '\.6\.2\.[[:digit:]]\{1,\}\.dylib'
libQt6Core.6.2.4.dylib
libQt6Gui.6.2.4.dylib
libQt6Network.6.2.4.dylib
...
libQt6WebChannel.6.2.4.dylib
libQt6WebEngineCore.6.2.4.dylib
libQt6WebEngineQuick.6.2.4.dylib
libQt6WebEngineQuickDelegatesQml.6.2.4.dylib
libQt6WebEngineWidgets.6.2.4.dylib
libQt6WebSockets.6.2.4.dylib
libQt6WebView.6.2.4.dylib
libQt6WebViewQuick.6.2.4.dylib
libQt6Widgets.6.2.4.dylib
libQt6Xml.6.2.4.dylib
同样的现象发生在 Windows,可以在 右键 DLL -> 属性 -> 详细信息 这里看到文件版本。
Qt 5.15 带 QtWebEngine 5.15.10 的 Qt5WebEngineCore.dll 的版本号是 5.15.10.0
Qt 6.2 带 QtWebEngine 6.3.2 的 Qt6WebEngineCore.dll 的版本号是 6.2.4.0
我没装 flash 没法上传图片,不过大家有兴趣可以自己编译下看看,或者等我把编译好的二进制传上去之后下载下来看。
related:https://bugreports.qt.io/browse/QTBUG-106630