如何解决qmake 可以在链接之前删除以前构建的应用程序包吗?
我正在使用 qmake
来构建 macOS 应用程序,对于我的发布版本,我让它运行 macdeployqt
,然后将应用程序作为后链接步骤(使用 {{1} }).
但是,如果构建目录中已经存在来自先前构建的应用程序包,则再次通过 QMAKE_POST_LINK
运行它会生成警告,有时还会生成错误,例如项目的依赖项已更改。此外,macdeployqt
不够智能,无法检测包含在应用程序包中的文件何时发生更改或不再需要,例如将文件复制到其 qmake
文件夹中。
因此,我希望 Resources
在构建开始时删除应用程序包(如果存在),但保留其他构建工件(如目标文件),以便我不必执行每次都完整构建。
到目前为止,我已经尝试使用 qmake
通过将其设置为 QMAKE_PRE_LINK
来删除应用程序,但显然它不会等待此变量中的命令在组装应用程序包之前完成执行,因此使用它来删除以前构建的应用程序包会导致链接失败,因为文件被意外删除。
我也尝试过 this question 中提到的方法,但由于完全相同的原因它失败了——我定义的目标将与所有其他目标同时运行,并且它会在 rm -rf $${TARGET}.app
期间删除文件正在尝试组装应用程序包。
有没有办法做到这一点?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。