• 4149阅读
  • 0回复

[讨论]插件在静态编译release与动态编译debug共存工程中的配置 [复制链接]

上一主题 下一主题
离线realfan
 

只看楼主 倒序阅读 楼主  发表于: 2012-12-25
Qt静态编译时,使用插件要用Q_IMPORT_PLUGIN宏导入,比如odbc插件,简体中文支持插件
#include <QtPlugin>
Q_IMPORT_PLUGIN(qsqlodbc)
Q_IMPORT_PLUGIN(qcncodecs)
pro文件中要加
QTPLUGIN += qsqlodbc
QTPLUGIN += qcncodecs
而动态编译,就不能有这些。对于动静态共存的工程应该如何处理呢?可以用下面的方法,
在main.cpp文件中
#ifdef QT_NO_DEBUG
    #include <QtPlugin>
    Q_IMPORT_PLUGIN(qsqlodbc)
    Q_IMPORT_PLUGIN(qcncodecs)
#endif
在pro文件中
CONFIG(release, debug|release) {
    QTPLUGIN += qsqlodbc
    QTPLUGIN += qcncodecs
}
CONFIG(debug, debug|release) {


}
注意,左花括号一定要与CONFIG(xxxx, debug|release)   在同一行,否则起不到限定作用。
这样,工程在静态编译release版和动态编译debug版,都能正常进行了。
快速回复
限100 字节
 
上一个 下一个