[英]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.