8

有点麻烦 - 我在 qmake 中添加了以下几行,以便让它将文件复制到 Mac 上的应用程序包中。

mac {
    QMAKE_POST_LINK = $$PWD/package_mac.sh
}

.sh 文件有时会运行,并且似乎可以工作(目前它只是运行touch geese,它创建了一个geese在构建目录中命名的文件(非常好!)。

但是,它不会在我每次构建时都运行,似乎只有在文件更改时才会运行。真的,我想要一种方法让 qmake 在每次构建时将我所有的游戏资源复制到每个平台上的正确位置(因此在 Windows 上构建文件夹,在 Mac 上构建应用程序包等)。

有任何想法吗?

4

1 回答 1

1

您是否尝试过使用POST_TARGETDEPS(与QMAKE_EXTRA_TARGETS)?这种方法的缺点是您必须创建某种虚拟文件(据我所知.PHONY,不支持),稍后qmake您可能也应该这样做。clean

以你为例:

mac {
    package-script = $$PWD/package_mac.sh
}

package-target.target = $$PWD/package.tmp
package-target.depends = FORCE
package-target.commands = $$package-script

(有关类似讨论,请参阅此问题。)

于 2015-08-22T17:39:53.623 回答