• 41473阅读
  • 286回复

[共享]共享一下自己编译的Qt吧 【6.7.0 / 6.5.3 / 6.2.7 / 5.15.13】 [复制链接]

上一主题 下一主题
在线fsu0413

只看该作者 160楼 发表于: 2022-09-14
Qt 6.2 带 6.3 QtWebEngine 构建成功了,不过 QtPdf 不 configure
看了一下 QtPdf 里面有个版本号判断 Qt6Core 版本号大于等于6.3.0,而 QtWebEngine 里面没有

寄了,从此之后的 Qt 6.2.4 构建没有 QtPdf 了


我记得以前有个帖子,里面 lixinwei 说了个构建 Qt 6.3 QtWebEngine 的方法来着,我怎么找不到了。。。。
在线fsu0413

只看该作者 161楼 发表于: 2022-09-15
发现问题

把 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

  1. ~/JenkinsMacOS/workspace/Qt/Q5mx6nf/buildDir/Qt5.15.6-macOS-x86_64-AppleClang12.0.5-noFramework/lib Darwin
  2. $ ls | grep '\.5\.15\.[[:digit:]]\{1,\}\.dylib'
  3. libQt5Core.5.15.6.dylib
  4. libQt5Gui.5.15.6.dylib
  5. libQt5Network.5.15.6.dylib
  6. ...
  7. libQt5WebChannel.5.15.6.dylib
  8. libQt5WebEngine.5.15.10.dylib
  9. libQt5WebEngineCore.5.15.10.dylib
  10. libQt5WebEngineWidgets.5.15.10.dylib
  11. libQt5WebSockets.5.15.6.dylib
  12. libQt5WebView.5.15.6.dylib
  13. libQt5Widgets.5.15.6.dylib
  14. libQt5Xml.5.15.6.dylib

  1. ~/JenkinsMacOS/workspace/Qt/q6_2ma6nf/buildDir/Qt6.2.4-macOS-arm64_v8a-AppleClang14.0.0-noFramework/lib Darwin
  2. $ ls | grep '\.6\.2\.[[:digit:]]\{1,\}\.dylib'
  3. libQt6Core.6.2.4.dylib
  4. libQt6Gui.6.2.4.dylib
  5. libQt6Network.6.2.4.dylib
  6. ...
  7. libQt6WebChannel.6.2.4.dylib
  8. libQt6WebEngineCore.6.2.4.dylib
  9. libQt6WebEngineQuick.6.2.4.dylib
  10. libQt6WebEngineQuickDelegatesQml.6.2.4.dylib
  11. libQt6WebEngineWidgets.6.2.4.dylib
  12. libQt6WebSockets.6.2.4.dylib
  13. libQt6WebView.6.2.4.dylib
  14. libQt6WebViewQuick.6.2.4.dylib
  15. libQt6Widgets.6.2.4.dylib
  16. 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

离线zhangxin

只看该作者 162楼 发表于: 2022-09-18
求助

CVE-2022-25255补丁打不上去,大概原因就是crlf的问题,想问下兄弟是怎样解决的?我对这方面不熟

另外CVE-2022-1096-qtwebengine-5.15也会卡住不动
在线fsu0413

只看该作者 163楼 发表于: 2022-09-18
回 zhangxin 的帖子
zhangxin:求助[表情]
CVE-2022-25255补丁打不上去,大概原因就是crlf的问题,想问下兄弟是怎样解决的?我对这方面不熟
另外CVE-2022-1096-qtwebengine-5.15也会卡住不动 (2022-09-18 01:15) 

CVE-2022-25255我第一次就过了。。。没遇到crlf问题
webengine我都是直接用5.15.10 / 6.3.2 的,不打补丁
离线zhangxin

只看该作者 164楼 发表于: 2022-09-18
回 fsu0413 的帖子
fsu0413:CVE-2022-25255我第一次就过了。。。没遇到crlf问题
webengine我都是直接用5.15.10 / 6.3.2 的,不打补丁 (2022-09-18 21:56)

我用的git bash,就用的patch -p1,就出了crlf问题了,现在还没解决,不过我看这个cve是针对unix的,我用windows版本的话,这个cve是可有可无的吧
离线zhangxin

只看该作者 165楼 发表于: 2022-09-18
$ patch -p1 < CVE-2022-25255-qprocess5-15.diff
(Stripping trailing CRs from patch; use --binary to disable.)
patching file src/corelib/io/qprocess_unix.cpp
Hunk #1 FAILED at 1.
patch unexpectedly ends in middle of line
Hunk #3 succeeded at 984 with fuzz 1.
1 out of 3 hunks FAILED -- saving rejects to file src/corelib/io/qprocess_unix.cpp.rej
离线zhangxin

只看该作者 166楼 发表于: 2022-09-18
加上--binary之后是这样的

$ patch -p1 --binary < CVE-2022-25255-qprocess5-15.diff
patching file src/corelib/io/qprocess_unix.cpp
Hunk #1 FAILED at 1.
patch: **** malformed patch at line 31:

在线fsu0413

只看该作者 167楼 发表于: 2022-09-19
回 zhangxin 的帖子
zhangxin:$ patch -p1 < CVE-2022-25255-qprocess5-15.diff
(Stripping trailing CRs from patch; use --binary to disable.)
patching file src/corelib/io/qprocess_unix.cpp
Hunk #1 FAILED at 1.
patch unexpectedly ends in middle of line
....... (2022-09-18 23:26) 

啊 这个不是crlf问题,是Qt的copyright有冲突,可以打开 qprocess_unix.cpp.rej看一下,只有copyright部分有影响,别的都打进去了,我确认过
在线fsu0413

只看该作者 168楼 发表于: 2022-09-19
回 zhangxin 的帖子
zhangxin:加上--binary之后是这样的
$ patch -p1 --binary < CVE-2022-25255-qprocess5-15.diff
patching file src/corelib/io/qprocess_unix.cpp
Hunk #1 FAILED at 1.
....... (2022-09-18 23:27) 

--binary我从来不用。。。。。。。。
离线zhangxin

只看该作者 169楼 发表于: 2022-09-19
回 fsu0413 的帖子
fsu0413:啊 这个不是crlf问题,是Qt的copyright有冲突,可以打开 qprocess_unix.cpp.rej看一下,只有copyright部分有影响,别的都打进去了,我确认过 (2022-09-19 08:32) 

是的,确实rej文件中只有copyright部分,但是为啥这行会patch失败呢
在线fsu0413

只看该作者 170楼 发表于: 2022-09-19
回 zhangxin 的帖子
zhangxin:是的,确实rej文件中只有copyright部分,但是为啥这行会patch失败呢 (2022-09-19 20:01) 

因为冲突啊。。。

只看该作者 171楼 发表于: 2022-09-22
感谢楼主,顺便求带debug版本   再次感谢楼主。
在线fsu0413

只看该作者 172楼 发表于: 2022-09-23
回 爆炒糖醋鱼 的帖子
爆炒糖醋鱼:感谢楼主,顺便求带debug版本[表情]   再次感谢楼主。 (2022-09-22 13:12) 

debug版本太占地方了,我也不想无偿弄,而且目前我还没有任何收钱的通道,所以暂时不弄
离线zhangxin

只看该作者 173楼 发表于: 2022-09-23
回 爆炒糖醋鱼 的帖子
爆炒糖醋鱼:感谢楼主,顺便求带debug版本[表情]   再次感谢楼主。 (2022-09-22 13:12) 

自己编译下就好了,debug+release十来分钟就好了
在线fsu0413

只看该作者 174楼 发表于: 2022-09-26
回 zhangxin 的帖子
zhangxin:自己编译下就好了,debug+release十来分钟就好了 (2022-09-23 22:04) 

我i9 12900ks都编译不了这么快,你用了什么魔法?难道是服务器cpu 自用?
离线zhangxin

只看该作者 175楼 发表于: 2022-09-26
回 fsu0413 的帖子
fsu0413:我i9 12900ks都编译不了这么快,你用了什么魔法?难道是服务器cpu 自用? (2022-09-26 12:01) 

哪有啊,我跳过webengine,笔记本12500h,jom,debug+release,不到20分钟,你是不是把小核关了?
在线fsu0413

只看该作者 176楼 发表于: 2022-09-28
回 zhangxin 的帖子
zhangxin:哪有啊,我跳过webengine,笔记本12500h,jom,debug+release,不到20分钟,你是不是把小核关了? (2022-09-26 19:13) 

跳过webengine正常。。。。我都是编webengine的
离线zhangxin

只看该作者 177楼 发表于: 2022-09-28
回 fsu0413 的帖子
fsu0413:跳过webengine正常。。。。我都是编webengine的 (2022-09-28 07:57) 

嗯,我自己用不到webengine,上次想捕获请求结果没弄出来直接放弃了,换了别的,所以编译很快,挂上吃个饭就完事儿了
在线fsu0413

只看该作者 178楼 发表于: 2022-10-15
被OpenSSL 3.0.6 & 1.1.1r 背刺了
所有安卓版都用了新的OpenSSL重新编了一遍,都嗝屁了

在线lixinwei

只看该作者 179楼 发表于: 2022-10-29
回 zhangxin 的帖子
zhangxin:求助[表情]
CVE-2022-25255补丁打不上去,大概原因就是crlf的问题,想问下兄弟是怎样解决的?我对这方面不熟
另外CVE-2022-1096-qtwebengine-5.15也会卡住不动 (2022-09-18 01:15)

5.15.6及以上版本,CVE-2022-1096-qtwebengine-5.15是可以直接打进去的
5.15.6以下版本,需要先打https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/356516这个补丁(CVE-2021-30551)
在线lixinwei

只看该作者 180楼 发表于: 2022-10-29
回 fsu0413 的帖子
fsu0413:Qt 6.2 带 6.3 QtWebEngine 构建成功了,不过 QtPdf 不 configure
看了一下 QtPdf 里面有个版本号判断 Qt6Core 版本号大于等于6.3.0,而 QtWebEngine 里面没有
寄了,从此之后的 Qt 6.2.4 构建没有 QtPdf 了
....... (2022-09-14 19:14)

将较新版本的 Qt WebEngine 跟较旧版本的 Qt 一起编译,本来就是允许的,不需要用到我以前说的那种方法。

git提交记录中说:We do not support building QtPdf against older version. There are some complains form moc compiler about missing Q_OBJECT macros when doing build against 6.2, simply disable the build. 所以 Qt PDF 6.3.2 不能跟 Qt 6.2.4 一起编译。

离线zhangxin

只看该作者 181楼 发表于: 2022-10-29
回 lixinwei 的帖子
lixinwei:5.15.6及以上版本,CVE-2022-1096-qtwebengine-5.15是可以直接打进去的
5.15.6以下版本,需要先打https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/356516这个补丁(CVE-2021-30551)
 (2022-10-29 23:07) 

确实,5.15.6直接打webengine的CVE是打不进去的,我今天编译5.15.7时直接就打好了,没有任何问题
在线fsu0413

只看该作者 182楼 发表于: 2022-10-30
回 lixinwei 的帖子
lixinwei:将较新版本的 Qt WebEngine 跟较旧版本的 Qt 一起编译,本来就是允许的,不需要用到我以前说的那种方法。
git提交记录中说:We do not support building QtPdf against older version. There are some complains form moc compiler about missing Q_OBJECT macros when doing b .. (2022-10-29 23:22) 

好的,多谢提供信息。
QtPdf那个我也看到了,我也不准备在6.2上搞PDF了
在线fsu0413

只看该作者 183楼 发表于: 2022-10-30
回 zhangxin 的帖子
zhangxin:确实,5.15.6直接打webengine的CVE是打不进去的,我今天编译5.15.7时直接就打好了,没有任何问题 (2022-10-29 23:49) 

你们都开始弄5.15.7了,我还在等OpenSSL 3.0.7 & 1.1.1s
我现在本地环境是3.0.6 & 1.1.1r
离线zhangxin

只看该作者 184楼 发表于: 2022-10-30
回 fsu0413 的帖子
fsu0413:你们都开始弄5.15.7了,我还在等OpenSSL 3.0.7 & 1.1.1s
我现在本地环境是3.0.6 & 1.1.1r (2022-10-30 14:24) 

1.1.1r不是撤回了吗,我在win下用的,没带openssl,自己其它库用的还是1.1.1q,1.1.1s有说什么时候发布吗?
在线fsu0413

只看该作者 185楼 发表于: 2022-10-30
回 zhangxin 的帖子
zhangxin:1.1.1r不是撤回了吗,我在win下用的,没带openssl,自己其它库用的还是1.1.1q,1.1.1s有说什么时候发布吗? (2022-10-30 16:21) 

1.1.1r和3.0.6都撤回了,原因是regression
1.1.1s应该是下周,他们发了预告邮件
离线zhangxin

只看该作者 186楼 发表于: 2022-10-30
回 fsu0413 的帖子
fsu0413:1.1.1r和3.0.6都撤回了,原因是regression
1.1.1s应该是下周,他们发了预告邮件 (2022-10-30 16:30) 

我刚把所有库使用1.1.1q编译了一遍,看来下周又要重新编译一次了
在线fsu0413

只看该作者 187楼 发表于: 2022-11-04
macOS下 QtWebEngine 5.15.11 编不过。。。。。
在线fsu0413

只看该作者 188楼 发表于: 2022-11-06
回 fsu0413 的帖子
fsu0413:macOS下 QtWebEngine 5.15.11 编不过。。。。。 (2022-11-04 08:13) 

macOS 11虚拟机更新了Xcode 13.2.1。
希望可以解决我的问题吧。。。之前更新到Xcode 13.2还是不行

还有 Qt 6.4的QtWebEngine放在Qt 6.2的代码库里编译会失败。
WebEngine里面gn部分都可以过,但是出了gn就失败,Windows和macOS上报的错误不同,原因未知,我也不想去解决了,之后的Qt 6.2我准备发不带WebEngine的了。
在线fsu0413

只看该作者 189楼 发表于: 2022-11-06
回 fsu0413 的帖子
fsu0413:macOS 11虚拟机更新了Xcode 13.2.1。
希望可以解决我的问题吧。。。之前更新到Xcode 13.2还是不行
还有 Qt 6.4的QtWebEngine放在Qt 6.2的代码库里编译会失败。
....... (2022-11-06 14:43) 

还有 Qt 6.3.2的QtWebEngine放在Qt 6.2的代码库里,使用Xcode14.1编译失败。
可能是QtWebEngine 6.3.2不兼容macOS Ventura SDK。
Xcode 14.0.1的时候附带的还是Monterey SDK所以没事。
离线woniu600

只看该作者 190楼 发表于: 2022-11-07
5.15.7 和 1.1.1r 都更新了啊

有发布 5.15.7 Windows 的计划吗

可以在网站或者GitHub 放个收款二维码,大家也可以捐赠支持一下
在线fsu0413

只看该作者 191楼 发表于: 2022-11-07
回 woniu600 的帖子
woniu600:5.15.7 和 1.1.1r 都更新了啊
有发布 5.15.7 Windows 的计划吗
可以在网站或者GitHub 放个收款二维码,大家也可以捐赠支持一下 (2022-11-07 07:51) 

5.15.7 除macos以外已经放上去了
收款的话,我实际上考虑的是商业定制,而不是捐赠,但是考虑到我个人的时间安排,可能商业定制并不能马上推出。。。。。。
在线fsu0413

只看该作者 192楼 发表于: 2022-11-19
Qt 6.4.1 macOS host WebAssembly 居然没带FEATURE_thread
别的版本都带了。。。。

好巧不巧我正好用的macOS,还用了thread。。。。。。
离线caiyuanlong

只看该作者 193楼 发表于: 2022-12-01
感谢版主的无私奉献。 如果能提供debug版本就更好了。
本帖提到的人: @fsu0413
离线jobfind

只看该作者 194楼 发表于: 2022-12-01
博主你好,你这个是静态库吗?
在线fsu0413

只看该作者 195楼 发表于: 2022-12-02
回 caiyuanlong 的帖子
caiyuanlong:感谢版主的无私奉献。[表情] [表情] [表情] 如果能提供debug版本就更好了。[表情]  (2022-12-01 12:05) 

客气,Debug我真的不想弄。。
在线fsu0413

只看该作者 196楼 发表于: 2022-12-02
回 jobfind 的帖子
jobfind:博主你好,你这个是静态库吗? (2022-12-01 16:06) 

有静有动 具体看网站介绍
离线liulin188

只看该作者 197楼 发表于: 2022-12-13
楼主大大的好人,祝楼主长命百岁。
https://wiki.qt.io/Qt_5.12_Release
https://wiki.qt.io/New_Features_in_Qt_5.12
https://wiki.qt.io/Qt_5.12.0_Known_Issues
https://www.qt.io/blog/qt-5.13.2-released
https://www.qt.io/blog/qt-creator-4.10.2-released
https://wiki.qt.io/Qt_5.12_Tools_and_Versions
在线fsu0413

只看该作者 198楼 发表于: 2023-01-05
5.15.8 等6.4.2发布后一起更
1条评分金钱+10
20091001753 金钱 +10 都发布了 2023-01-06
离线aivyna

只看该作者 199楼 发表于: 2023-01-14

Qt Creator 9.0.1 (Community)手动添加6.2.4 Dynamic & Shared Builds会报错,Qt6.2.4-Windows-x86_64-MinGWxx.x.x 报错





另外Qt6.2.4-Windows-x86_64-MinGWxx.x.x-staticFull报错"Qt version is not properly installed, please run make install",
是说5.14以上支持relocatable特性.还必须配合qmake.exe同一文件夹下的qt.conf文件,内容写为
[paths]
Prefix = ..

才能解决问题,是这个意思么?





快速回复
限100 字节
 
上一个 下一个