编译CTK

 使用ctkPluginFramework作为插件系统框架的确有着众多开发上的优势。最近收到一些站内信,大家都想使用ctkPluginFramework但是不知道如何编译,这篇教程就来讲一讲ctkPluginFramework插件系统在Windows下的编译过程。

准备条件:

https://wenku.baidu.com/view/83ef9e1be97101f69e3143323968011ca300f797.html

        1. 安装Git,我们通过它来下载CTK的源码。

        2. 安装CMake,我们用它来生成vs下的sln解决方案文件。

相关站点:

        1. CTK的官网:http://www.commontk.org/index.php/Main_Page

        2. CTK源码下载地址:https://github.com/commontk/CTK

编译步骤:

        注意:下面目录中出现的文件,由于是我已经编译过的,因此可能会和刚下载的多出很多文件,在这里仅说明流程是怎样的。

        1. Git下载源码包。Git下载地址:https://github.com/commontk/CTK.git 。

             

        2. 利用cmake打开最外层的CMakeList.txt文件,选择ctkPluginFramework子项,生成sln文件。

            Git下载完成后,其目录结构如下:

            

            如上图,打开cmake工具,选择刚下载的CTK目录,它会自动根据CMakeList.txt文件加载子项目,如下图所示;

                         

            选择ctkPluginFramework模块,点击Generate, Configure;完成后,查看是否生成sln文件,注意:此处一定要勾选上图中标注的CTK_ENABLE_PluginFramework,不然编译生成的sln文件也无法生成最终的CTKPluginFramework.dll文件;

                       

        3. VS2010下打开sln文件,进行编译生成CTKPluginFramework.dll和CTKCore.dll。

           使用VS2010打开sln文件后,结构如下所示:

           

          选择ALL BULID编译完成,即可生成最终的CTKPluginFramework.dll,插件系统所应用的dll就是该文件。

          最终,在CTK/CTK-build/bin/debug/下即可生成最终的CTKCore.dll和CTKPluginFramework.dll文件以及对应的lib文件,再利用头文件就可以构建基于插件开发的系统,如下图所示:

          

总结:

        如上所示,ctkPluginFramework的编译还是很简单,关键是要和业务结合,在项目中合理地使用它,相信它会给大家带来意想不到的好处,尤其是面对大型项目、多人协作开发的过程中。如何构建一个项目的结构以及如何在项目中使用插件式开发,CTK的官网也有相关介绍,但是本人感觉不是很清晰,详细使用在下篇博文中写出。




CMake配置


后来发现好像也不必要这样,不一定要全部选择。

注意编译完后要在环境变量中添加动态库的路径。

将编译好的CTKWidgetsPlugins.dll CTKVisualizationVTKWidgetsPlugins.dll复制到qt designer下,打开designer检查插件是否安装成功。


(错误一)

CMake提示错误为: 转换到 COFF 期间失败: 文件无效或损坏

应该是 .net Framework升级后,使得cvtres.exe版本不一致导致该错误。

解决方法:

查找是否有两个cvtres.exe。

一个是VS安装目录:C:\Program Files(x86)\Microsoft Visual Studio 10.0\vc\bin\cvtres.exe,

另一个是.Net Framework目录:C:\Windows\Microsoft.NET\Framework\v4.0.30319\cvtres.exe。

右键属性|详细信息 查看两者版本号,删除/重命名较旧的版本。

编译好之后记得改回来。

(错误二)

VS2010编译时若出现以下情况一直没有反应,重新启动工程编译。

[cpp]  view plain  copy
  1. Cloning into 'CTKData'...  
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值