C++ 1.项目错误:QT:webkitwidgets中的未知模块

C++ 1.项目错误:QT:webkitwidgets中的未知模块,c++,qt,web,C++,Qt,Web,我试着使用QWebView。正如我从互联网上了解到的,我应该,还有这一行webkitwidgets在.pro文件QT+=之后。所以我添加了它并得到了这个错误: 项目错误:QT:webkitwidgets中的未知模块 我知道很多人已经询问过这个错误,但大多数答案是使用以下命令行安装libqt5webkit5 dev:sudo apt get install libqt5webkit5 dev 问题是,我在Windows上,而不是Linux上,所以这对我来说没什么用处 奇怪的是,C:\Qt\Tool

我试着使用QWebView。正如我从互联网上了解到的,我应该,还有这一行
webkitwidgets
.pro
文件
QT+=
之后。所以我添加了它并得到了这个错误:

项目错误:QT:webkitwidgets中的未知模块

我知道很多人已经询问过这个错误,但大多数答案是使用以下命令行安装
libqt5webkit5 dev
:sudo apt get install libqt5webkit5 dev

问题是,我在Windows上,而不是Linux上,所以这对我来说没什么用处

奇怪的是,
C:\Qt\Tools\QtCreator\bin
中有
Qt5WebKitWidgets.dll
Qt5WebKitWidgets.dll
,所以我想,我拥有使用QWebView所需的一切,并且添加这一行
Qt+=webkitwidgets
,而不会出现任何错误


此外,我还了解到,在Qt5.0及更高版本(或类似版本)之后,WebKitWidgets不再受支持,我应该使用QtWebEngine,但我不知道如何在QtWidgets应用程序中使用QWebView

你把Qt-Creator(一个IDE)和Qt(开发工具包本身)混为一谈了。与Qt Creator捆绑的内容绝对无关紧要,因为Qt Creator也使用Qt构建

您需要查看Qt的安装目录,在
mkspecs/modules
下。每个模块都有一个
.pri
文件。您应该同时看到
qt_lib_webkit.pri
qt_lib_webkitwidgets.pri
。如果您没有,那就意味着模块不是为您正在使用的Qt构建的。模块文件夹是
qmake
查找Qt模块定义的位置


如果您使用的是预构建的最新版本的Qt,那么它很可能是在关闭WebKit的情况下构建的。解决方法是转到以前的次要版本(比如5.4而不是5.5),或者自己构建Qt。

与Kuba Ober的答案类似,我通过复制以前安装的5.5版本中的webkit和webkitwidgets pri文件来实现

~/Qt/5.5/clang_64/mkspecs/modules/

奇怪的是,我在C:\Qt\Tools\QtCreator\bin中有Qt5WebKitWidgets.dll和Qt5WebKit.dll,所以我想,我拥有使用QWebView和添加这行Qt+=webkitwidgets所需的一切,而不会出现任何错误


这是因为windows DLL必须位于应用程序的路径或基本路径上,这正是windows的工作方式。您可以看到,如果在windows上安装qtcreator,则应用程序的lib文件夹中将没有DLL。所有内容都将放在bin文件夹中

我有两个文件:C:\Qt\5.5\mingw492\u 32\mkspecs\modules和C:\Qt\5.5\msvc2013\u 64\mkspecs\modules,但没有:C:\Qt\5.5\android\u armv7\mkspecs\modules和C:\Qt\5.5\winphone\u x86\mkspecs\modules,我需要它们在最后两个目录中。我应该试试其他版本的Qt吗?@LeonidManieiev好吧,你是为android还是windows phone构建的?如果没有,那你就没事了。最后,您是将Qt与mingw一起使用还是与msvc2013一起使用?在Qt Creator下,您是否使用正确的Qt工具包构建项目?我正在为android和windows phone构建。我正在使用Qt和GCC4.9(适用于Android)以及MSVC2013(适用于windows phone)。关于最后一个问题,我不明白你的意思,“我只是复制那些文件”你不能这么做,因为你没有这些文件夹。它们是Qt分布的一部分。停止修改不属于你的东西。这是一个非常坏的习惯。“似乎有效”您确定您的项目构建和运行正确吗?您安装的Qt似乎根本不支持android和windows phone下的webkit,仅此而已,除非它是某种包装缺陷,没有安装
.pri
文件,即使它们应该安装。请随意查看bug数据库。是的,我已经意识到,仅仅处理文件是个坏主意。那么,最后,我应该怎么做,尝试另一个版本的Qt?