我坚持使用Qt和它的标志来强制捆绑编译而不是Mac上的dylib。我找到并阅读了下一篇文章:http://qt-project.org/forums/viewthread/1119,Qt Creator or qmake on MacOSX build library as ".so" not dylib,但是,我仍然无法使其发挥作用。
我有以下.pro:
macx {
TEMPLATE = lib
CONFIG += plugin
QMAKE_LFLAGS_PLUGIN -= -dynamiclib
QMAKE_LFLAGS_PLUGIN += -bundle
QMAKE_EXTENSION_SHLIB = bundle
# Sources, headers etc.
}
它根本不起作用。无论我推动什么选择 - 它仍然是dylib。 CONFIG += lib_bundle
生成框架,这对我来说再也不起作用......
我想我错过了一些简单的事情,但到目前为止,我花了几个小时试图找出问题所在的位置并没有成功。
我很感激任何帮助。
答案 0 :(得分:0)
后来的Qt版本可能不需要那么多调整,但这适用于Qt 4.8.1:
TEMPLATE = lib
macx {
CONFIG += lib_bundle
QMAKE_LFLAGS += -bundle
QMAKE_LFLAGS_SHLIB -= -dynamiclib
QMAKE_LFLAGS_VERSION = ""
QMAKE_LFLAGS_COMPAT_VERSION = ""
QMAKE_LFLAGS_SONAME = ""
}