创建 CTK 插件(qmake)

来源:互联网 发布:软件架构是什么 编辑:程序博客网 时间:2024/06/06 05:51

简述

关于如何创建 CTK 插件,在 创建 CTK 插件(CMake) 中已经进行了详细的讲解。的确,这种方式对于不熟悉 CMake 的人来说很痛苦,那么如何使用 qmake 来创建 CTK 插件呢?

  • 简述
  • 相关文件
  • 创建 CTK 插件
  • 编译加载

版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820

相关文件

之前说过,在创建 CTK 插件时,需要一个 qrc 文件和 MF 文件。。。在使用 CMake 编译完成插件后,可以在构建目录中找到:

这里写图片描述

其中,MANIFEST.MF 是插件的清单文件,包含了插件名、版本号等信息:

Plugin-SymbolicName: auth.pluginPlugin-ActivationPolicy: eagerPlugin-Category: testPlugin-ContactAddress: https://github.com/WaleonPlugin-Description: A plugin for authenticationPlugin-Name: auth_pluginPlugin-Vendor: WaleonPlugin-Version: 1.0.0

auth_plugin_manifest.qrc 是资源集合文件:

<!DOCTYPE RCC><RCC version="1.0"><qresource prefix="/auth.plugin/META-INF">    <file>MANIFEST.MF</file></qresource></RCC>

资源数据可以编译成二进制,进而在程序代码中立即访问。

创建 CTK 插件

了解了 qrcMF 文件,插件的创建就变得十分简单。

CMake 和 qmake 相比:

  • CMake:需要 CMakeList.txtmanifest_headers.cmaketarget_libraries.cmake
  • qmake:需要 .proauth_plugin_manifest.qrcMANIFEST.MF

除此之外,其他文件(例如:auth_plugin_service.h)则保持不变。

项目结构如下:

这里写图片描述

注意: 其他文件内容请参考 创建 CTK 插件(CMake)

这里只列出 .pro 文件:

QT += coreQT -= guiTEMPLATE = libCONFIG += pluginTARGET = auth_pluginLIBS += -L$$PWD/Libs -lCTKCore -lCTKPluginFrameworkINCLUDEPATH += \    $$PWD/../../CTK-master/Libs/Core \    $$PWD/../../CTK-master/Libs/PluginFrameworkHEADERS += \    auth_plugin_service.h \    auth_plugin.h \    auth_plugin_activator.hSOURCES += \    auth_plugin.cpp \    auth_plugin_activator.cppRESOURCES += auth_plugin_manifest.qrc

由于构建的是一个共享库,所以需要将 TEMPLATE 设置为 lib,同时还必须将 CONFIG 设置为 plugin

创建 CTK 插件时,需要依赖 CTKCoreCTKPluginFramework,所以也要将他们包含进来。

最后,记得使用 RESOURCES 指定资源集合文件。

编译加载

执行 qmake -> 构建,就会生成 auth_plugin.dll

然后,可以参考 在程序中嵌入 CTK 插件框架,在程序中加载插件。

原创粉丝点击