繁体   English   中英

Qt 5.3。 QtWidgets:没有这样的文件或目录#include<qtwidgets></qtwidgets>

[英]Qt 5.3. QtWidgets: No such file or directory #include <QtWidgets>

我想编译 Qt 示例。 我收到错误 QtWidgets: No such file or directory #include

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets - does not help
QT += widgets                                   - does not help
INCLUDEPATH += /opt/Qt/5.3/Src/qtbase/include/  - does not help

Qt 5.3。 Ubuntu 14.04 x64。

您需要仔细检查是否已完成所有这些步骤:

  • 已安装模块

  • greaterThan(QT_MAJOR_VERSION,4):QT + =小部件

  • 你重新运行Qt 5 qmake。

话虽如此,我想提醒您,包括整个模块并不是一个好主意,因为它包含所有与小部件相关的内容。 尝试将其缩小到您真正需要的标题。

正如您注意到Qt目录结构在Qt4和Qt5之间发生了变化。 QWidget标头移动到QtWidgets目录。 尝试添加

INCLUDEPATH += /opt/Qt/5.3/Src/qtbase/include/QtWidgets

如果这无助于尝试手动查找标题

find /opt/Qt/5.3/Src/qtbase/ -name QWidget

以及它在INCLUDEPATH中的目录

根据最终比赛的评论进行编辑。

我同意解决方法通常是一个坏主意。 要测试安装QT在哪里查找qt5标头和库。 创建一个最小的项目。

#include <QApplication>
#include <QtWidgets>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QWidget w;
    w.show();
    app.exec();
}

生成项目并添加QT + =小部件

/opt/Qt/5.3/Src/qtbase/bin/qmake -project

项目文件

######################################################################
# Automatically generated by qmake (3.0) Thu Jul 10 13:05:17 2014
######################################################################

TEMPLATE = app
TARGET = so_qtwidgets
INCLUDEPATH += .

QT += widgets

# Input
SOURCES += main.cpp

生成一个make文件

/opt/Qt/5.3/Src/qtbase/bin/qmake

有趣的部分小部件标志添加:

  • 在我的情况下-I / usr / include / qt5 / QtWidgets -I / usr / include / qt5 / QtGui到INCPATH
  • -DQT_WIDGETS_LIB到DEFINES变量。
  • -lQt5Widgets -lQt5Gui到libs。

应该有所不同的唯一部分是QtWidgets和QtGui的路径。 如果这些错了,我会尝试重新安装Qt。

在运行“make”之前检查 your.pro 文件的外观。 我发现命令“qmake -project”自动生成了导致同样错误的.pro 文件。 我现在通过以下命令编译了我的 qt 项目,错误消失了:

qmake my_project.pro
make

这一切看起来非常像错误的方式回合,我确实有5.6暂时有同样的问题,但答案可能会更简单。

如果您正在加载大量示例,您可能会先到达编辑或最后的任何内容。 如果第一次加载示例,则需要进行“配置”,这在项目侧标签下,应该为您提供“配置”而不是“构建和运行”。 它并不总是直接跳出来有一个缺陷,但是接下来是默认情况下没有支持的示例(Desktop OpenGL和iOS for two)。

在完成之前,它不会解决直接项目之外的任何依赖项,因为所使用的库取决于使用的编译器/目标(例如,MSVS,GNUCC,MinGW,32 / 64bit)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM