编译ctk源码

目录

前景介绍

[下载The Common Toolkit (CTK)](#下载The Common Toolkit (CTK))

cmake-gui编译

vs2019生成

debug版本

release版本


前景介绍

CTK(Common Toolkit)是一个用于医学图像处理和可视化应用程序开发的工具集,具有以下特点:

  1. 基于开源和跨平台的Qt框架: CTK构建在Qt框架之上,这意味着它具有跨平台性,可以在多个操作系统上运行,包括Windows、Linux和macOS。Qt提供了丰富的GUI开发工具,使得开发医学图像处理应用程序变得更加容易。

  2. DICOM支持: CTK包括一组用于处理DICOM(数字影像和通信医学)格式的工具和库。DICOM是医学图像处理领域中常用的标准格式,CTK使开发人员能够轻松地读取、解析和处理DICOM图像和数据。

  3. 可视化组件: CTK提供了一系列用于可视化医学图像的组件,包括用于图像显示、交互和浏览的工具。这些组件可以帮助开发人员创建用户友好的医学图像处理界面。

  4. 插件架构: CTK支持插件架构,允许开发人员轻松扩展应用程序的功能。你可以通过创建自定义插件来添加特定的图像处理算法或其他功能。

  5. 社区支持: CTK是一个开源项目,拥有活跃的社区支持。这意味着开发人员可以获得开发文档、示例代码和社区讨论,以解决问题并分享最佳实践。

  6. 用于医学研究和临床应用: CTK的主要应用领域是医学图像处理和医学研究,因此它专注于满足医学领域的需求。它的特性和工具旨在支持医学研究和临床应用程序的开发。

总之,CTK是一个专注于医学图像处理应用程序开发的工具集,它提供了DICOM支持、可视化组件、插件架构和跨平台性等特点,使开发人员能够更轻松地创建医学图像处理应用程序。它是医学领域中广泛使用的工具之一。

先安装好vs2019, cmake, qt5.15.2

官网编译教程:https://slicer.readthedocs.io/en/latest/developer_guide/build_instructions/windows.html

下载The Common Toolkit (CTK)

ctk源码:https://github.com/commontk/CTK/archive/master.zip

ckt-data源码:https://github.com/commontk/CTKData/archive/master.zip

解压文件得到

cmake-gui编译

修改qt版本

configure

设置qt路径,如果Qt5_DIR不存在,则通过Add Entry添加。

configure,然后再添加CTKData_DIR

选择要编译的模块

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

取消选中 BUILD_TESTING

具体如下。挨个去搜索,设置

generate

vs2019生成

debug版本

生成-》配置管理器,选中INSTALL,右击方案名-》生成解决方案。

等待一个小时, debug版编译成功,默认文件在C:\Program Files\CTK

Include是头文件,lib有lib文件和dll文件,还有一些dll在D:\zxq\code\c++\CTK-master\build\CTK-build\bin\Debug。都拷贝备份到debug目录。

release版本

生成-》配置管理器,选中INSTALL,生成解决方案

编译成功

只是生成了lib文件夹:该文件夹包含了lib和dll文件,include是和debug模式共用的,还有一些dll在D:\zxq\code\c++\CTK-master\build\CTK-build\bin\Release。拷贝一份过来即可。

相关推荐
Quz18 小时前
QML 信号与槽:直接绑定与跨文件通信
qt·编程语言·设计
GIS阵地19 小时前
QgsSingleBandPseudoColorRenderer 完整详解(QGIS 3.40.13 C++)
开发语言·前端·c++·qt·qgis
丰锋ff1 天前
1.2 Qt常用基础类型
开发语言·qt
nianniannnn1 天前
Qt QMessageBox知识点
开发语言·数据库·qt
J_yyy1 天前
【Qt核心组件类框架】
开发语言·qt
Drone_xjw1 天前
双网卡下Qt程序数据包“乱飞”之谜:为什么必须断开再连接
开发语言·qt
Quz1 天前
QML 网格与流式布局:Grid/GridLayout 与 Flow
qt
qq_401700411 天前
Qt容器性能优化:QVector、QHash、QMap到底应该怎么选?
开发语言·qt·性能优化
Quz1 天前
QML 线性布局:Row/RowLayout 与 Column/ColumnLayout
前端·qt
imatt2 天前
Qt Creator 在Windows下编译信息乱码
windows·qt