• 22009阅读
  • 28回复

[提问]Qt的 MinGw版本一直都不支持WebEngIne吗? [复制链接]

上一主题 下一主题
离线涵涵
 

只看楼主 倒序阅读 楼主  发表于: 2016-05-27
之前我用的是Qt5.1后来 我改成了 5.6,今天 发现居然没有WebKit,百度一下看看 原来是Webkit去掉了,换成了WebEngine,那么问题来了~为什么不支持呢?我用的 是Qt5.6 MinGw,没有WebEngine这个东西,只有vs版本才有??于是我下载了 Qt5.7 beta,也不支持WebEngine,于是我默默地装回了,Qt5.4 网上说这是 支持WebKit的最后一个版本。以后的Mingw版本会支持WebEngine吗?
离线fsu0413

只看该作者 1楼 发表于: 2016-05-28
http://tieba.baidu.com/p/4574135717

看来这里人比较少啊。。。。
离线eliot1949

只看该作者 2楼 发表于: 2016-05-28
看到的消息是chrome不支持mingw编译
离线realfan

只看该作者 3楼 发表于: 2016-05-28
WebEngIne编译要用到VS2013里的一些头文件
MingW没办法
离线stlcours

只看该作者 4楼 发表于: 2016-05-28
回 realfan 的帖子
realfan:WebEngIne编译要用到VS2013里的一些头文件
MingW没办法 (2016-05-28 15:43) 

那就不能替MingW把头文件加上吗?那么多头文件都加上了,也不差这一个。而且美国还刚刚判例,JAVA API不侵权,那么C++ 头文件应该也不侵权啊。
离线adonais

只看该作者 5楼 发表于: 2016-06-02
回 stlcours 的帖子
stlcours:那就不能替MingW把头文件加上吗?那么多头文件都加上了,也不差这一个。而且美国还刚刚判例,JAVA API不侵权,那么C++ 头文件应该也不侵权啊。 (2016-05-28 18:13) 

从代码层面上来讲,mingw是可以编译WebEngine的.目前mingw-w64的实现完全可以编译绝大部分msvc能编译的东西,并且代码不需要多大的改动.
真正的难度在于更改chromium的编译工具链,它涉及到无数的脚本,另外N多第三方库的编译方式也需要更改.这需要做大量工作.
问题是当qt项目做了这些之后,如果上游的chromium不接受这些补丁,那么每次升级WebEngine都需要合并这些补丁,另外还要做额外的回归测试.
还有一个原因就是下游的mingw在大型项目上表现不够稳定.
离线stlcours

只看该作者 6楼 发表于: 2016-06-02
回 adonais 的帖子
adonais:从代码层面上来讲,mingw是可以编译WebEngine的.目前mingw-w64的实现完全可以编译绝大部分msvc能编译的东西,并且代码不需要多大的改动.
真正的难度在于更改chromium的编译工具链,它涉及到无数的脚本,另外N多第三方库的编译方式也需要更改.这需要做大量工作.
问题是当qt项目做了这 .. (2016-06-02 17:37) 

谢谢指教。编译这个活真是一个苦活、累活,很重要,但是却也很无聊。不仅仅是针对chromium,而是我自己原来的感慨就是这样。

但是请问mingw为什么在大型项目上有什么不稳定呢?编译器的行为是一致的,应该与大型小型无关(大型项目也不会用到很多的语法)?我自己的项目也是用mingw编译的,被你这么一说,还有担心了~
离线johnyork

只看该作者 7楼 发表于: 2016-06-02
回 stlcours 的帖子
stlcours:谢谢指教。编译这个活真是一个苦活、累活,很重要,但是却也很无聊。不仅仅是针对chromium,而是我自己原来的感慨就是这样。
但是请问mingw为什么在大型项目上有什么不稳定呢?编译器的行为是一致的,应该与大型小型无关(大型项目也不会用到很多的语法)?我自己的项目也是用mi .. (2016-06-02 21:48) 

比如现在最新版的MinGW-w64,gcc version 5.3.0,编译Qt 5.5.1以上版本非常蛋疼,在链接Qt3D模块中的一个工具程序时链接器就很蛋疼的报告too many sections然后失败。现在只能无尽的等待……
离线toby520

只看该作者 8楼 发表于: 2016-06-03
别等mingw版本的webengine啦,因为Qt官方已经放弃对他的支持,理由是chrome团队不喜欢mingw,引自Qt blog里面的一段官方说明
QtQML多多指教开发社区 http://qtclub.heilqt.com
将QtCoding进行到底
关注移动互联网,关注金融
开发跨平台客户端,服务于金融行业
专业定制界面
群号:312125701   373955953(qml控件定做)
离线adonais

只看该作者 9楼 发表于: 2016-06-03
回 stlcours 的帖子
stlcours:谢谢指教。编译这个活真是一个苦活、累活,很重要,但是却也很无聊。不仅仅是针对chromium,而是我自己原来的感慨就是这样。
但是请问mingw为什么在大型项目上有什么不稳定呢?编译器的行为是一致的,应该与大型小型无关(大型项目也不会用到很多的语法)?我自己的项目也是用mi .. (2016-06-02 21:48) 

除非你自己或者公司单独维护某一个分支的mingw编译器,否则最好不要用在商业或者生产项目中.
bugs可能来自gcc或者binutils,他们只会优先处理posix系统上的bug,mingw对它们来说就是后娘养的.
bugs可能来自mingw-w64,相比与linux上glibc的千锤百炼,它在windows上的嫁接天然上就有缺陷.
另外,对mingw编译器的升级或维护基本上就是个人或小团队,貌似没有哪个是gcc/binutils的核心开发人员.
离线johnyork

只看该作者 10楼 发表于: 2016-06-03
回 adonais 的帖子
adonais:除非你自己或者公司单独维护某一个分支的mingw编译器,否则最好不要用在商业或者生产项目中.
bugs可能来自gcc或者binutils,他们只会优先处理posix系统上的bug,mingw对它们来说就是后娘养的.
bugs可能来自mingw-w64,相比与linux上glibc的千锤百炼,它在windows上的嫁接天然上就有缺 .. (2016-06-03 15:00) 

太悲哀了,本来想在windows上摆脱商业编译环境的限制的,结果却又不得不重新用回来
离线adonais

只看该作者 11楼 发表于: 2016-06-03
回 johnyork 的帖子
johnyork:太悲哀了,本来想在windows上摆脱商业编译环境的限制的,结果却又不得不重新用回来 (2016-06-03 19:59) 

也不是那么悲观,mingw-w64目前还是不错的,貌似mingw-w64的发起人叫kai xxx什么什么的,他是红帽子公司员工,本身又是gcc的核心开发者.所以gcc官方也有对mingw-w64的支持.
还有,得益于msys2项目的成立,以及一些linux发行版的支持,基于mingw-w64的mingw编译器一般会经过数以千计开源项目的编译测试.
当然也有用于大型项目的例子,比如说tor browser,一个fork自firefox的浏览器项目,就是使用mingw编译器编译. codeblocks项目也一直使用mingw编译器编译.
TDM-GCC,mingw-builds发布的编译器质量还是可以的,他们的态度也比较谨慎,比如说目前一直没有发布mingw 6.0,就是因为没有通过回归测试,binutils 2.26的windows支持又太不给力.还有mingw-w64数学库的bugs不知道什么时候修复.
离线johnyork

只看该作者 12楼 发表于: 2016-06-04
回 adonais 的帖子
adonais:也不是那么悲观,mingw-w64目前还是不错的,貌似mingw-w64的发起人叫kai xxx什么什么的,他是红帽子公司员工,本身又是gcc的核心开发者.所以gcc官方也有对mingw-w64的支持.
还有,得益于msys2项目的成立,以及一些linux发行版的支持,基于mingw-w64的mingw编译器一般会经过数以千计开源 .. (2016-06-03 22:18) 

上面我提到的MinGW-w64的链接器BUG未修复已经有快一年时间了,而且貌似从GCC v5.x开始这个BUG就存在了,导致我一直没办法用新版MinGW-w64编译器编译Qt,这也使得我对开源软件的信心越来越不足了-_-!
离线adonais

只看该作者 13楼 发表于: 2016-06-05
回 johnyork 的帖子
johnyork:
上面我提到的MinGW-w64的链接器BUG未修复已经有快一年时间了,而且貌似从GCC v5.x开始这个BUG就存在了,导致我一直没办法用新版MinGW-w64编译器编译Qt,这也使得我对开源软件的信心越来越不足了-_-!

一般来说,这往往是因为-ffunction-sections -fdata-sections引起的,如果你编译的是64位版本.
你可以-Wa,-mbig-obj 参数试试.
这里确实要吐槽一下binutils.
在gcc里,一般-ffunction-sections -fdata-sections和-Wl,--gc-sections一起出现.
但是binutils对COFF-PE格式并不支持gc-sections,直到目前git trunk才实验性的支持.
离线johnyork

只看该作者 14楼 发表于: 2016-06-05
回 adonais 的帖子
adonais:一般来说,这往往是因为-ffunction-sections -fdata-sections引起的,如果你编译的是64位版本.
你可以-Wa,-mbig-obj 参数试试.
这里确实要吐槽一下binutils.
在gcc里,一般-ffunction-sections -fdata-sections和-Wl,--gc-sections一起出现.
....... (2016-06-05 10:43) 

非常感谢!我去试试!
离线fsu0413

只看该作者 15楼 发表于: 2016-06-06
回 johnyork 的帖子
johnyork:比如现在最新版的MinGW-w64,gcc version 5.3.0,编译Qt 5.5.1以上版本非常蛋疼,在链接Qt3D模块中的一个工具程序时链接器就很蛋疼的报告too many sections然后失败。现在只能无尽的等待…… (2016-06-02 23:24) 

我为什么编译的时候没出现。。。。。
离线johnyork

只看该作者 16楼 发表于: 2016-06-09
回 fsu0413 的帖子
fsu0413:我为什么编译的时候没出现。。。。。 (2016-06-06 18:49) 

你是编译的32位版本吧?
离线realfan

只看该作者 17楼 发表于: 2016-06-10
回 johnyork 的帖子
johnyork:太悲哀了,本来想在windows上摆脱商业编译环境的限制的,结果却又不得不重新用回来 (2016-06-03 19:59) 

用VS社区版本,也是免费的。
离线fsu0413

只看该作者 18楼 发表于: 2016-06-13
回 johnyork 的帖子
johnyork:你是编译的32位版本吧? (2016-06-09 23:03) 

32 64都编译。。。。
离线johnyork

只看该作者 19楼 发表于: 2016-06-13
回 fsu0413 的帖子
fsu0413:32 64都编译。。。。 (2016-06-13 06:50) 

GCC版本是不是5.3?
离线圣域天子

只看该作者 20楼 发表于: 2016-07-13
我想不明白为什么不去考虑支持一下 Clang 编译器呢?它应该比gcc要优秀不少啊。
离线圣域天子

只看该作者 21楼 发表于: 2016-07-15
我装了vs2015版的5.7,里面也没有QWebEngIne和QWebView
难道只支持 QtQuick 的吗?Widget中没有了???
离线fsu0413

只看该作者 22楼 发表于: 2016-07-19
回 圣域天子 的帖子
圣域天子:我装了vs2015版的5.7,里面也没有QWebEngIne和QWebView
难道只支持 QtQuick 的吗?Widget中没有了???[表情]  (2016-07-15 09:18) 

WebEngine和WebView一直都是有的。
WebEngine是Widgets和QML都有,WebView只有QML
离线fsu0413

只看该作者 23楼 发表于: 2016-07-19
回 圣域天子 的帖子
圣域天子:我想不明白为什么不去考虑支持一下 Clang 编译器呢?它应该比gcc要优秀不少啊。 (2016-07-13 21:47) 

5.7开始支持,backend是VS2015
离线baisetuzi

只看该作者 24楼 发表于: 2018-03-21
请教大家,WebEngine支持ARM-linux吗?
离线dddggg

只看该作者 25楼 发表于: 2018-04-13
刚好也遇到
菜鸟
离线大漠之鹰

只看该作者 26楼 发表于: 2018-09-13
回 baisetuzi 的帖子
baisetuzi:请教大家,WebEngine支持ARM-linux吗?
 (2018-03-21 16:18) 

这个是支持的
本是后山人,偶作前堂客,醉舞经阁半卷书,坐井说天阔。大志戏功名,海斗量福祸,论到囊中羞涩时,怒指乾坤错
QQ:874164244
离线XChinux

只看该作者 27楼 发表于: 2021-01-21
回 圣域天子 的帖子
圣域天子:我装了vs2015版的5.7,里面也没有QWebEngIne和QWebView
难道只支持 QtQuick 的吗?Widget中没有了???[表情]  (2016-07-15 09:18) 

我用的安装版网友编译的带webkit的Qt 5.7.1
http://www.qtcn.org/bbs/thread-htm-fid-68.html
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线海森堡

只看该作者 28楼 发表于: 2021-01-21
回 XChinux 的帖子
XChinux:我用的安装版网友编译的带webkit的Qt 5.7.1
http://www.qtcn.org/bbs/thread-htm-fid-68.html (2021-01-21 09:47) 

你这个连接似乎不对啊,打开是一个版本,而不是一个贴子
快速回复
限100 字节
 
上一个 下一个