我正在进军C ++和QT 5.9。
我正在运行QT Tools for VS 2017,QT 5.9库已添加到VS 2017,我正在构建QT GUI应用程序而没有问题。
但是,当我尝试构建一个隐藏QWebEngineView或QWebEnginePage的 very 简单示例时,我在QWebEngineView上创建了未解析的外部符号" __ declspec(dllimport)... .. 我还注意到其中一些#includes与QT 5.9 doc网站上的示例不匹配......
我已经卸载并重新安装了QT 5.9以及5.6几次,并将每个模块包含在每个模块中,以防万一!
代码
#include <QtWidgets/QtWidgets>
#include <QtWidgets/QApplication>
#include <QtWebEngineWidgets/QtWebEngineWidgets>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWebEngineView view;
view.show();
view.load(QUrl("http://google.com"));
return a.exec();
}
构建输出
1>main.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __cdecl QWebEngineView::QWebEngineView(class QWidget *)" (__imp_??0QWebEngineView@@QEAA@PEAVQWidget@@@Z) referenced in function main
1>main.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual __cdecl QWebEngineView::~QWebEngineView(void)" (__imp_??1QWebEngineView@@UEAA@XZ) referenced in function main
1>main.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __cdecl QWebEngineView::load(class QUrl const &)" (__imp_?load@QWebEngineView@@QEAAXAEBVQUrl@@@Z) referenced in function main
答案 0 :(得分:2)
您需要将QtWebEngine库添加到链接器。打开qmake .pro文件并添加QT += webenginewidgets
。 http://doc.qt.io/qt-5/qwebengineview.html