没有制定目标 'VLCQtWidgets/WidgetVideo.h' 的规则,'ui_mediaplayer.h' 需要

No rule to make target 'VLCQtWidgets/WidgetVideo.h', needed by 'ui_mediaplayer.h'

我正在使用 vlc-qt 开发媒体播放器。所以到目前为止,我所做的是克隆 vlc-qt 的 git 存储库,并使用 BUILDING.md 构建它,并在 [=] 的“'pro'”文件中构建它19=] 我已经添加了我的 vlc-qt 安装路径,如下所示

INCLUDEPATH+= /home/vinay/vlc-qt/build/include
LIBS+= -L/home/vinay/vlc-qt/lib -lVLCQtCore -lVLCQtWidgets

我正在尝试制作与此示例所示相同的编辑器 https://github.com/vlc-qt/examples/tree/master/simple-player

但是这里它所做的是,他在 UI 文件中创建了一个小部件,然后将其提升到 header WidgetVideo.h 和 class VlcWidgetVideo所以我也做了同样的事情。我在升级的小部件中提供的 header 和 class 的路径是

class name:VlcWidgetVideo
header: VLCQtWidgets/WidgetVideo.h

但是当我构建我的项目时,它显示以下错误

No rule to make target 'VLCQtWidgets/WidgetVideo.h', needed by 'ui_mediaplayer.h'.  Stop.

当我在项目中包含 header 时

#include "VLCQtWidgets/WidgetVideo.h

文件已包含但没有显示错误,这意味着我的项目能够访问该文件,但是当我 运行 它显示没有规则错误。

我不知道为什么它无法访问该文件。

您需要在 pro 文件中包含此行

INCLUDEPATH+= /usr/local/include

此错误的原因是 ui 文件无法访问头文件,因为实际的系统路径未包含在您的 pro 文件中,并且大部分时间在 Linux vlc-qt 文件安装在此位置

/usr/local/include