6

我有个问题。我需要在 qt4 上编译 qt5 代码。当我编译它时,我有这样的错误(在 qt5 我没有):

QWebView: No Such File Or Directory

这是我的 .pro 文件:

QT       += core gui xml webkitwidgets

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = TPDetector
TEMPLATE = app


SOURCES += \
    main.cpp \
    mainwindow.cpp \
    VKAuth.cpp

HEADERS += \
    mainwindow.h \
    VKAuth.h

如何在 qt4 上构建我的项目?

4

2 回答 2

10

我必须libqtwebkit-dev为我的应用程序添加包才能编译。

于 2015-04-04T10:17:48.147 回答
8

与 QT5 一起发布的新 webkit 具有新的结构。QWebView、QWebpage 等现在是 QtWebKitWidgets 的一部分。

因此,在您的代码中,您需要像这样包含 webview:

  #include <QtWebKitWidgets/QWebView>

在您的 .pro 文件中,您需要添加:

   QT += webkitwidgets

如果你真的想让你的代码向前/向后兼容;我只想检查 QT5:

   QT+= core gui webkit

   contains(QT_VERSION, ^5.*) {
       QT += webkitwidgets
   } 
   ...

然后在您的代码中:

  #if (QT_VERSION < 0x050000)
  #include <QWebView>
  #else 
  #include <QtWebKitWidgets/QWebView>
  #endif
于 2013-10-11T03:56:52.213 回答