4

几年后我又开始使用 Qt (5.0.1)。

我在使用 QMAKE_BUNDLE_DATA 在我的 OSX 应用程序包中分发 dylib 和希望插件时遇到了一些麻烦。

这是我的应用程序 .pro 文件的相关部分的样子:

macx {
        dylibs.path = $$DESTDIR_TARGET/Contents/Frameworks
        dylibs.files = $$DESTDIR/../lib/*
        QMAKE_BUNDLE_DATA += dylibs

        plugins.path = $$DESTDIR_TARGET/Contents/Plugins
        plugins.files = $$DESTDIR/../plugins/*
        QMAKE_BUNDLE_DATA += plugins
}

INSTALLS += target

我已验证 $$DESTDIR 指向正确的位置,并且该目录中存在文件。我对 Makefile 不是很好,但据我了解,qmake 生成的目标如下:

../../../build/apps/MyApp.app/Contents/Frameworks/*:

这些目标未在 all 目标中引用。任何想法我做错了什么?

4

1 回答 1

2

我放弃了 QMAKE_BUNDLE_DATA,据我所知它不适用于 app_bundle 目标。

相反,我使用INSTALLSandmake install生成应用程序包,然后触发对 macdeployqt 的调用以完成任务。

这并不理想,但可以解决问题。

于 2013-04-22T16:19:09.063 回答