一个叫做“大哥”的前辈高手整理的文章,非常详细,对于刚接触DCMTK的新手非常有帮助,俺就是在他的帮助下调通DCMTK的,如此经典的文章必须收藏。^_^
献给有志于使用DCMTK但又在编译出现问题的同学,千万别在起步就失去信心。
假设:1、VC 安装目录是 C:/Program Files/Microsoft Visual Studio 10.0/VC下面我以
正文:
1、下载:http://www.dcmtk.org
源码:[url=ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/dcmtk354/dcmtk-3.5.4.zip]ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/dcmtk354/dcmtk-3.5.4.zip
支持库LIB/MT)
支持库LIB/MD)
2、下载CMAKE最新版本(2.81)
http://www.cmake.org/files/v2.8/cmake-2.8.1-win32-x86.exe 并安装到随便啥地方都OK.
3、改支持库的lib文件的文件名,复制到VCDIR/lib目录. 我相信绝大部分出现问题的同学可能都没做这步,所以编译就出问题了。
4、CMAKE设置:支持选项全部选上,但不需要填写支持库所在路径.为什么呢?上面第3点就是为了解决这个问题的.目的就是把DCMTK那五个支持库当做VC标准库了。不信你且在VC中用<>来
我的VC10就选10了,你的是什么版本自己选吧,Finish
把所有支持库都选上!
选ADVANCED VIEW,我们要编译/MT选项的工程,所以把所有默认的/MD都改成/MT,MDd改成/MTd
点configure
点generate
大功告成。
5、用VC IDE打开
最后应该是:
========== Build: 63 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
编译没问题了,再选Build->Batch build,这次只选
Build 结果:(
C:/Program Files/MSBuild/Microsoft.Cpp/v4.0/Microsoft.CppCommon.targets(113,5): error MSB3073: The command "C:/CMake/bin/cmake.exe -DBUILD_TYPE=Debug -P cmake_install.cmake
C:/Program Files/MSBuild/Microsoft.Cpp/v4.0/Microsoft.CppCommon.targets(113,5): error MSB3073: :VCEnd" exited with code 1.
Build FAILED.
Time Elapsed 00:00:05.85
========== Build: 0 succeeded, 1 failed, 63 up-to-date, 0 skipped ==========
编译器找不到dcmtkeay.dll文件,用记事本打开 O:/dcmtk354/dcmtk-3.5.4/dcmnet/apps/cmake_install.cmake
把
把 "dcmtkssl.dll"
保存cmake_install.cmake 文件。
再重新编译
结果:FinalizeBuildStatus:
Build succeeded.
Time Elapsed 00:00:19.31
========== Build: 2 succeeded, 0 failed, 62 up-to-date, 0 skipped ==========
所有编译完成,无任何错误了。打开O:/dcmtk354/dcmtk-3.5.4-win32-i386那一堆文件就是你梦寐以求的DCMTK了。
6、留给你最后的一个问题:怎样编译 RELEASE版本的DCMTK_LIB?嘿嘿……如果你理解了我这篇文章的意图的话,其实是很简单的。
处女贴,真不容易呀!有问题?请到群(39266235)里发言。
总结与建议:
1、道理其实很简单:参考下LINUX的作风,安装软件后,软件必须的
2、建议遇到问题的时候多google(鄙视google对抗中国政府的做法?滚蛋吧,不过也感谢它曾经为中国网民提供最优秀的搜索服务),baidu(同样鄙视,明明是在美国注册的公司,打什么中国民营企业的幌子呀?!)一下。还没答案咋办?问问你的脑细胞,再不行,加几个QQ群玩玩吧。
3、建议有志于程序设计方面的同学呀,一定要把英语学好,中国的软件为什么老慢半拍而且缺乏世界级的软件?原因很简单,工具是人家的生产的,人家的文档用英文写的,假如英文不精,理解也就停留在一知半解的水平了,写出来的东西,当然是一样的一知半解。发扬中华文化的同时,一定要把英文学好这也是我写这篇文章的原因之一。
注:图片如果看不清,请先另存为再看吧。
写文章真的很累,一个下午的时间,才写这么点呀,而且文字本来在写在本人的QQ空间里,只加了点图片,郁闷死了