c++ - 带有 VS 2017 的 QT 5.9 - 使用 QWebEngineView 获取未解析的符号

标签 c++ qt linker-errors

我正在涉足 C++ 和 QT 5.9。

我正在运行适用于 VS 2017 的 QT 工具,并将 QT 5.9 库添加到 VS 2017,并且正在构建 QT GUI 应用程序而没有问题。

但是,当我尝试构建一个包含 QWebEngineView 或 QWebEnginePage 的非常简单示例时,我得到未解析的外部符号“__declspec(dllimport)...在 QWebEngineView... 我还注意到一些#includes 与 QT 5.9 文档站点上的示例不匹配...

我已经卸载并重新安装了 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

最佳答案

您需要将 QtWebEngine 库添加到链接器。打开 qmake .pro 文件并添加 QT += webenginewidgetshttp://doc.qt.io/qt-5/qwebengineview.html

关于c++ - 带有 VS 2017 的 QT 5.9 - 使用 QWebEngineView 获取未解析的符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47583354/

相关文章:

c++ - 程序查找并打印最后两位数字均为奇数的第一个完全正方形 (i*i)

python - 在 C++ 中使用 MinGW 嵌入 python3.6 链接失败

file - Qt:下载文件不起作用

qt - QPushButton() 只要按下它就应该使用react

visual-c++ - 我设置什么选项来使用 main() 而不是 wmain()

c++ - 图书馆如何实现不同操作系统之间的可移植性

c++ - 使用 QTabWidget 在运行时单击时将内容加载到选项卡中

c++ - 在 Windows 上构建 PoDoFo - Unresolved external 问题

c++ - 静态库的链接器错误

c++ - 无法使用 glDrawArrays 绘制