欢迎来到我的博客,希望这篇文章对你有所帮助,如果觉得不错,请点赞搜藏哈。
MITK2021.2编译
参考链接:https://blog.csdn.net/calmreason/article/details/90741241
为什么要编译MITK,因为公司目前的项目就是一MITK为模版改的的,领导说后面我们要用Qt和VTK来重新搞一遍,这个对于有经验的老司机来说,应该是没有太多难度的,但是我没有呀,我来这公司之前都没有接触过医疗,连VTK啥都不知道,感谢公司给我机会让我带薪学习。这也就是为啥要编译了,因为我准备抄袭,哈哈哈。
接受来自全国人民的点赞
本次MITK编译主要耗时3天,整体战线有20天吧。终于成功了,我特意截图嘚瑟一下。还激动的给媳妇发了200红包,哎,私房钱又少200。为啥激动,因为太尼玛难编译了,而且好多问题出的都是无从下手的那种问题。更加主要的,直属领导是个兼职,除了周一例会和突发事件,基本不来公司,再说这种编译问题去问领导,是不是傻逼了;只能自己摸索。
1 最终编译环境
为啥是最终编译环境呢,看下图,为了编译它,我换了三个版本的Qt和三个版本的VS,都是泪呀。还有一个更气人的就是公司的破电脑,都尼玛2021年了,还没有固态硬盘,每次打开VS死的心都有,就是你去上个厕所,回来硬盘等还是常亮。要不是对工作满满的热爱,真想炸了它。
说回正事,这里说一下我最终的编译环境,至于这几个版本的东西有没有互相影响,暂时没有验证,也不想验证了。这辈子再也不想在编译MITK了。应该没有落下的工具了吧。
操纵系统:Windows 10 专业工作站版 21H1
ed2k://|file|cn_windows_10_business_editions_version_21h1_updated_jun_2021_x64_dvd_9d9154fa.iso|5707534336|69E3B7C619BD8C09CFC2B2C19A91E13E|/
MITK源码:MITK v2021.02 Git分支2493570
https://github.com/MITK/MITK/releases/tag/v2021.02CMake版本:3.21.0-rc2
https://cmake.org/download/Qt版本:5.14.2 msvc2017_64
https://download.qt.io/archive/qt/5.14/5.14.2/VS版本:VS2017 Community
ed2k://|file|mu_visual_studio_community_2017_version_15.3_x86_x64_11100062.exe|1069960|5984B3CD547F9F213DE21EFE5887F08D|/Git:我用的是VS自动安装的Git工具
OpenSSL:1.1.1 (使用Qt安装工具安装)
https://download.qt.io/archive/online_installers/4.1/Qt Visual Studio Tools version 2.7.1 (rev.18)
https://download.qt.io/archive/vsaddin/2.7.1/
这里要特别说一下,编译的时候一定要保证网路畅通,能上Git
2 下载MITK源代码
直接百度MITK,进入官网https://www.mitk.org/wiki/The_Medical_Imaging_Interaction_Toolkit_(MITK)
这个网站还是比较简洁的,要么直接点击DownLoads,要么点击download here进入下载界面,在下载界面其他暂时先不用关注,只需要关注两个地方,一个是安装包,一个是源码,如下图。安装包对于windows来说,就是个exe程序,和普通软件一样,可以下载下来把玩一下,理论上我们编译出来的源码和他是一样的。
2.1 从Git下载代码
开始进入有点陌生,为了保证咱们说的一个东西,还是点一下右侧我红框标出来的,点击MITK v2021.02进入到下载界面,为了保证我们后面编译顺畅,还是建议下载win版本的。
2.2 存放位置
网上有专家说了,MITK编译目录放的太深的话,CMake直接会报路径太长错误,所以直接放C盘更目录。就是下面这样
文件夹里面是这个样子,分别用来放编译好的文件,编译文件和源码。
3 CMake配置
编译前声明
这里还是要做点工作,以防后面出现好多乱七八糟的错误。在MITK源码目录下,有一个CMakeExternals文件夹,进到这个目录里面。吧里面所有.patch的文件改为CR LF
CMake配置基本就是默认配置,如果找不到Qt的路径,那就手动配置一下,剩下的就是默认就好了,没有晚上说的那些需要更改文件内容,主要就是取消编译实例,指定安装路径。
4 编译
编译没有啥好说的,使用VS2017 打开MITK-superbuild.sln,—> 选择Release 64位 —>选择ALL_BUILD—>生成。准备迎接错误吧。
4.1 C4819警告
按照大神说法,C4819是优先解决警告,正常情况下,解决完成C4819编译也就完成了。具体方法也很简单
- 打开报警告的文件
- CTRL + A 全选,高级保存选项,选择编码和尾行格式
- 保存文件
高级保存选项:https://blog.csdn.net/willingtolove/article/details/103772406
5 体会
现在真的要写些东西了,才发现好多东西不用写,也没得西戎;因为更多的是摸索的过程,好多坑也没有记录。其实在编译的过程中,遇到好多问题,C2220、MSB600系列、LNK系列等好多。换Qt版本,换VS版本,换MITK源码,单独编译VTK、ITK、Eigen及不下10次的编译失败,真的不想编译了,好在最后还是咬牙搞出来了,和面主力还是搞VTK。