几年后我又开始使用Qt(5.0.1)了。
我在使用QMAKE_BUNDLE_DATA分发dylibs并希望在我的OSX应用程序包中插件时遇到了一些麻烦。
以下是我的应用程序.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指向正确的位置,并且该目录中存在该文件。我对Makefiles不太满意,但据我所知,qmake正在产生以下目标:
../../../build/apps/MyApp.app/Contents/Frameworks/*:
这些目标未在所有目标中引用。我有什么想法吗?
答案 0 :(得分:2)
我放弃了QMAKE_BUNDLE_DATA,我可以告诉它对app_bundle目标不起作用。
相反,我正在使用INSTALLS
和make install
来生成应用包,然后触发对macdeployqt的调用以完成任务。
这不太理想,但它可以解决问题。