CTK插件框架学习-源码下载编译(01)

1、编译环境

window11、vs17、Qt5.14.0、cmake3.27.4

2、下载链接

cmake:Index of /files/v3.20

qt:Index of /

vs22以前的版本需要登录下载:Visual Studio 较旧的下载 - 2019、2017、2015 和以前的版本

vs22下载:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux

CTK:源码GitHub - commontk/CTK: A set of common support code for medical imaging, surgical navigation, and related purposes.

CTKData 源码: https://github.com/commontk/CTKData

注:最新版的CTK不需要下载CTKData,cmake完成后编译工程时会自动从GitHub上下载到CTK\build文件夹内,无网络环境手动拷贝,删除git路径,点击add Entry按钮添加即可。

3、使用cmake编译

3.1

3.2

3.3 修改源码目录下的SuperBuild.cmake文件, 将 INSTALL_COMMAND "" 修改为 INSTALL_COMMAND ${_INSTALL_CMD}

3.4 勾选CTK下几个配置项,全体模块根据需要自行勾选

CTK_ENABLE_PluginFramework
CTK_ENABLE_Widgets
CTK_LIB_PluginFramework
CTK_LIB_Widgets
CTK_PLUGIN_org.commontk.configadmin
CTK_PLUGIN_org.commontk.eventadmin
CTK_PLUGIN_org.commontk.log
CTK_PLUGIN_org.commontk.metatype


3.5 修改CMAKE下安装路径,尽量不要放在C盘防止写入失败

3.6 再次点击Configure,显示配置完成,且配置项内无标红

3.7 点击Generate,显示生成成功,Open Project按钮变为可用状态即编译成功

3.8 进入新建的build目录下,打开CTK.sln工程,编译即可。

3.9 编译成功的头文件、库文件会保存到build/CTK-install文件夹内,其他工程引用即可。

3.10 注意编译CTK时使用的版本,即平台应与使用环境一致。

3.11 测试CTK

#include "CTKPlugin.h"
#include <QtWidgets/QApplication>
#include <iostream>
#include <QStyleFactory>
#include <QDir>
#include <QDirIterator>
#include "ctkPluginFrameworkFactory.h"
#include "ctkPluginFramework.h"
#include "ctkPluginException.h"
#include "ctkPluginContext.h"
#include "ctkPluginFrameworkLauncher.h"


int main(int argc, char *argv[])
{
	QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);

    QApplication a(argc, argv);
	a.setApplicationName("ctktest");

	// 启动插件工厂
	ctkPluginFrameworkFactory* ctkFrameWorkFactory = new ctkPluginFrameworkFactory;
	QSharedPointer<ctkPluginFramework> framework = ctkFrameWorkFactory->getFramework();
	try {
		framework->init();
		framework->start();
	}
	catch (const ctkPluginException& e)
	{
		std::cout << "framework init fail" << std::endl;
	}

    return a.exec();
}

无报错,window下CTK编译测试成功!

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-03-22 23:42:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-22 23:42:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-22 23:42:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-22 23:42:02       18 阅读

热门阅读

  1. 命令执行漏洞

    2024-03-22 23:42:02       17 阅读
  2. 配置Flask-CLI以便与Flask应用程序一起使用

    2024-03-22 23:42:02       17 阅读
  3. GPT+向量数据库+Function calling=垂直领域小助手

    2024-03-22 23:42:02       16 阅读
  4. node核心模块之Path

    2024-03-22 23:42:02       19 阅读
  5. php函数参考表

    2024-03-22 23:42:02       17 阅读
  6. c语言:于龙减

    2024-03-22 23:42:02       17 阅读
  7. 【蓝桥杯入门记录】模板1.0

    2024-03-22 23:42:02       17 阅读
  8. postgres数据库中的几种常用的几何空间运算

    2024-03-22 23:42:02       17 阅读