POST_TARGETDEPS 报错
时间: 2023-07-28 09:07:33 浏览: 51
如果您在使用 `POST_TARGETDEPS` 时遇到了错误,可能是由于您的 QMake 版本过低或者不支持该选项。`POST_TARGETDEPS` 是一个在 QMake 3.0 以上版本中引入的选项,用于指定目标的后置依赖项。
如果您的 QMake 版本较低,可以尝试使用 `QMAKE_EXTRA_COMPILERS` 和 `QMAKE_EXTRA_TARGETS` 来实现将所有头文件复制到指定目录的功能。以下是一个示例:
```
HEADERS_DESTDIR = path/to/headers
copy_headers.input = HEADERS
copy_headers.output = headers
copy_headers.commands = $(COPY_DIR) $$PWD $$HEADERS_DESTDIR
QMAKE_EXTRA_COMPILERS += copy_headers
QMAKE_EXTRA_TARGETS += headers
```
在这个示例中,我们使用 `QMAKE_EXTRA_COMPILERS` 变量来定义一个名为 `copy_headers` 的自定义编译器,它的输入为 `HEADERS`,输出为 `headers`,命令为将当前目录复制到 `$$HEADERS_DESTDIR` 目录中。然后,我们使用 `QMAKE_EXTRA_TARGETS` 变量来创建一个名为 `headers` 的自定义目标,并将其添加到 `QMAKE_EXTRA_TARGETS` 变量中。这样,在构建项目时,就会自动执行 `copy_headers` 编译器,并将所有头文件复制到指定目录中。
请确保您已经将 `HEADERS` 变量设置为所有的头文件列表,例如:
```
HEADERS += header1.h \
header2.h \
header3.h \
...
```
如果您的头文件不在同一目录下,您可以使用相对路径或绝对路径来指定头文件的位置。
希望这个方法可以帮助您实现将所有头文件复制到指定目录的功能。