Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt CMake找不到QWidgets_Qt_Cmake - Fatal编程技术网

Qt CMake找不到QWidgets

Qt CMake找不到QWidgets,qt,cmake,Qt,Cmake,我有一个CMakeLists.txt文件,如下所示: # CMakeLists.txt project(myApp) # Set minimum version of CMake cmake_minimum_required(VERSION 3.5) # Instruct CMake to run moc automatically when needed. set(CMAKE_AUTOMOC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) # Find Qt5

我有一个CMakeLists.txt文件,如下所示:

# CMakeLists.txt
project(myApp)

# Set minimum version of CMake
cmake_minimum_required(VERSION 3.5)

# Instruct CMake to run moc automatically when needed.
set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)

# Find Qt5Core and Qt5Widgets
find_package(Qt5Core REQUIRED)
find_package(Qt5Widgets REQUIRED)

# For finding Qt includes
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
include_directories(${Qt5Widgets_INCLUDE_DIRS})
include_directories(${Qt5Core_INCLUDE_DIRS})

# Collect source files
set(SOURCE
    main.cpp
    mainwindow.cpp
)

# Collect header files
set(HEADERS
    mainwindow.h
)

# Create executable
add_executable(prog ${SOURCE})

# Linking Editor with Qt libraries
target_link_libraries(prog Qt5::Core Qt5::Widgets)
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
/*
 * mainwindow.h
 */
#include <QMainWindow>
#include <QWidgets>


class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidgets *parent = 0);
    ~MainWindow();

};

#endif
当我运行cmake并执行以下操作时,将显示以下错误消息

Scanning dependencies of target Prog
[ 40%] Building CXX object CMakeFiles/Prog.dir/main.cpp.o
In file included from /path/main.cpp:7:0:
/path/mainwindow.h:7:20: fatal error: QWidgets: No such file or directory
compilation terminated.
我在哪里做错了CMake文件

main window.h
如下所示:

# CMakeLists.txt
project(myApp)

# Set minimum version of CMake
cmake_minimum_required(VERSION 3.5)

# Instruct CMake to run moc automatically when needed.
set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)

# Find Qt5Core and Qt5Widgets
find_package(Qt5Core REQUIRED)
find_package(Qt5Widgets REQUIRED)

# For finding Qt includes
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
include_directories(${Qt5Widgets_INCLUDE_DIRS})
include_directories(${Qt5Core_INCLUDE_DIRS})

# Collect source files
set(SOURCE
    main.cpp
    mainwindow.cpp
)

# Collect header files
set(HEADERS
    mainwindow.h
)

# Create executable
add_executable(prog ${SOURCE})

# Linking Editor with Qt libraries
target_link_libraries(prog Qt5::Core Qt5::Widgets)
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
/*
 * mainwindow.h
 */
#include <QMainWindow>
#include <QWidgets>


class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidgets *parent = 0);
    ~MainWindow();

};

#endif
\ifndef主窗口
#定义主窗口
/*
*主窗口
*/
#包括
#包括
类主窗口:公共QMainWindow
{
Q_对象
公众:
主窗口(QWidgets*parent=0);
~main窗口();
};
#恩迪夫
应该是

#include <QWidget> 

class MainWindow : public QMainWindow
{

...
#包括
类主窗口:公共QMainWindow
{
...

显示你的
主窗口。h
。好像你在那里有类似
#include
的东西,这似乎不对。它应该是
#include
@DanielKamilKozar:是的,这就是我在主窗口中的东西。h.有什么问题吗?它应该是#include and class main window:publicQMainWindow@DavidMarquant:谢谢非常有效。请回答你的评论。