报错特征:编译提示 xxx.h: No such file or directory,错误出现在 ui_xxx.h 自动生成文件里,根源是uic 生成代码时找不到自定义控件头文件
头文件 (Header file) 填写规则
- 同目录:
"MyWidget.h"(必须双引号,不能尖括号<>) - 子目录(推荐写法):
"widgets/MyWidget.h" - ❌ 错误:
<MyWidget.h>、绝对路径D:/xxx/xxx.h、漏双引号
不要勾选「全局包含 (Global include)」 ,勾选会强制生成<xxx.h>,极易找不到文件
uic 会根据填写的字符串直接写进ui_xxx.h,填错路径 / 符号直接报找不到。
构建脚本添加头文件搜索路径
bash
# $$PWD = 当前pro文件所在目录,跨平台安全
INCLUDEPATH += $$PWD
INCLUDEPATH += $$PWD/widgets
# 多目录换行续行加\
INCLUDEPATH += \
$$PWD/widgets \
$$PWD/common