[英]Q_OBJECT macro issue during build
我正在使用QT
进行项目。 为了将它与 premake 链接,我克隆了生成 QT 解决方案premake-qt的插件。 一般来说,在使用 qt 时效果很好。 但我需要创建自定义信号,为此,我必须在我的 header 文件中添加Q_OBJECT
。 这是文件:
#pragma once
#ifndef _WINDOW_H_
#define _WINDOW_H_
#include <QApplication>
#include <QWidget>
#include <QPushButton>
#include <QProgressBar>
#include <QSlider>
#include <QFileDialog>
#include <QtDebug>
#include <QFile>
#include <QTextStream>
#include <QMenu>
class WindowUI : public QWidget
{
Q_OBJECT
enum class State {
Save = 0,
Export = 1,
};
... // rest of header
所以没有Q_OBJECT
一切正常,但是当我用它构建时,我有一个错误。
>Moc'ing Window.h
>the specified path cannot be found.
我发现它在 vscode 树中生成了moc_Window.args
和moc_Window.cpp
但.cpp
不在我的工作目录中。 如果需要,我可以提供我的premake.lua
配置文件,如果缺少某些东西,我会在其中链接 QT。 添加Q_OBJECT
时是否必须在我的项目上运行qmake
?
尝试从 VS 项目中删除 class 并将其添加回来。 在将普通 class 更改为基于 QObject(包括 Q_OBJECT 宏)时,我遇到了类似的问题。 我认为这个问题与 Qt VS 插件如何进行 moc'cing 有关。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.